我有一个名为location
我想为每个术语添加“新闻”和“市场”等部分,所以我的url看起来像/location/montreal/news/
在我尝试添加分页之前,它工作得非常好。这是我的代码:
add_action( \'init\', \'region_rewrite\' );
function region_rewrite()
{
global $wp;
$wp->add_query_var( \'section\' );
add_rewrite_rule(
\'^location/([^/]*)/([^/]*)/page/([0-9]+)/?\',
\'index.php?location=$matches[1]§ion=$matches[2]&paged=$matches[3]\',
\'top\'
);
add_rewrite_rule(
\'^location/([^/]*)/([^/]*)/?\',
\'index.php?location=$matches[1]§ion=$matches[2]\',
\'top\'
);
}
我正在使用
Rewrite analyser plugin 而且,query\\u vars location、section和paged似乎分配了正确的值。然而,我在尝试访问页面url时遇到404错误,如
/location/montreal/news/page/2
. 我还注意到
page
变量具有值
/2
. 这就是我找不到404的原因吗?
任何帮助都将不胜感激!
SO网友:GordoF
多亏了奥利维尔。我自己的问题是,我的add\\u rewrite\\u url在页面上运行良好,但并不是所有帖子都可以。
如果只使用%postname%/
在permalink设置中。如果使用/%category%/%postname%/
i、 e。http://me.com/test/post/my-next-bit-that-url-rewrite-should-act-on
保持301重定向到http://me.com/test/post/my-next-bit-that-url-rewrite-should-act-on
因为wordpress的规范行为
下面的行停止了此问题。
remove_filter(\'template_redirect\', \'redirect_canonical\');
我想这应该在法典中提出。