![](/img/trans.png)
[英]Regular expression for add_rewrite_rules with at least one hyphen
[英]Create a subfolder of a page with add_rewrite_rules in WordPress
我正在尝试使用add_rewrite_rule
从普通WordPress页面获取子页面
该页面位于http://example.com/mypage
子文件夹类似于http://example.com/mypage/sub1
但可以是sub2
, sub3
或sub4
(名称已知)
页面名称mypage
(塞) 尚不清楚,但该页面ID
目前,我对此感到困惑:(简体)
add_action ( 'init', 'my_init' );
add_action ( 'query_vars', 'my_query_vars' );
function my_init(){
add_rewrite_rule( '([^/]+)/(sub1|sub2|sub3|sub4)/?', 'index.php?my_page=$matches[2]', 'top');
}
function my_query_vars($vars) {
$vars[] = "my_page";
return $vars;
}
如果我转到http://example.com/mypage
我位于该页面上(显然),但转到mypage/sub1
最终显示在主页上
答案很简单。 这是修改后的my_init
函数:
function my_init(){
add_rewrite_rule( '([^/]+)/(sub1|sub2|sub3|sub4)/?', 'index.php?pagename=$matches[1]&my_page=$matches[2]', 'top');
}
请注意pagename
变量,其中包含当前页面的名称(子标签)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.