我正在使用$wp\\u rewrite->non\\u wp\\u规则
我的代码如下:
\'name/(.*)\' => \'index.php?post_type=post\';
我可以使用如下url
http://mysite.com/custom_name/post_name使用$wp\\u rewrite->非wp\\u规则,如何使页面以相同的方式工作。
这只是一个例子:
\'anothername/(.*)\' => \'index.php?post_type=page\'; //for all pages
\'anothername/(.*)\' => \'page/pagename\' //for one specific page
有没有办法让页面看起来像这样:
http://mysite/custom_name/page_name.
以上两个示例将我引向:
http://mysite/page_name //without the slug
最合适的回答,由SO网友:Milo 整理而成
我没有尝试过外部规则,但您可以通过内部重写和pagename
:
function wpd_page_rewrite(){
add_rewrite_rule(
\'^anothername/([^/]*)/?\',
\'index.php?pagename=$matches[1]\',
\'top\'
);
}
add_action( \'init\', \'wpd_page_rewrite\' );
对于父/子页面,必须设置
pagename
到父/子路径,
page/pagename
, 或者您也可以使用
page_id
并使用页面的ID。
编辑-请注意,您必须flush rewrite rules 添加新的后。在测试期间执行此操作的快速方法是访问permalinks设置页面。