如果页面为起始页面,则Wordpress添加\重写\规则重定向
我使用以下代码进行自定义wordpress重写:如果页面为起始页面,则Wordpress添加\重写\规则重定向,wordpress,redirect,url-rewriting,rewrite,Wordpress,Redirect,Url Rewriting,Rewrite,我使用以下代码进行自定义wordpress重写: function add_rewrite_rules() { add_rewrite_rule( '^mypath/([A-z0-9\-\_\,]+)/?$', 'index.php?page_id=2&tags=$matches[0]', 'top' ); } add_action('init', 'add_rewrite_rules'); 这很好: 当我打开/myp
function add_rewrite_rules() {
add_rewrite_rule(
'^mypath/([A-z0-9\-\_\,]+)/?$',
'index.php?page_id=2&tags=$matches[0]',
'top'
);
}
add_action('init', 'add_rewrite_rules');
这很好:
当我打开/mypath/tag1、tag2、tag3/
时,将显示页面id==2的页面,并获取参数标签
包含tag1、tag2、tag3
。
路径保持为/mypath/tag1、tag2、tag3/
但有一个例外:
当页面id=2的页面被标记为wordpress起始页面时,他会忘记所有内容并重定向到/
如果页面是起始页面,Wordpress似乎会重定向到WP_HOME,但我希望它保持在/mypath/tag1、tag2、tag3/
,因为我希望加载起始页面并在角度脚本中使用标记
参数
有人知道我如何防止这种重定向吗?在这个线程中自己找到了解决方案: 只需禁用首页的规范重定向:
function disable_canonical_redirect_for_front_page( $redirect ) {
if ( is_page() && $front_page = get_option( 'page_on_front' ) ) {
if ( is_page( $front_page ) )
$redirect = false;
}
return $redirect;
}
add_filter( 'redirect_canonical', 'disable_canonical_redirect_for_front_page' );