我想加载一个包含此请求的页面:
/foo/bar
/foo/bar/bar
但这不起作用并显示 404 页面:
function custom_rewrite_rule() {
add_rewrite_rule('^foo/','index.php?page_id=205533','top');
}
add_action('init', 'custom_rewrite_rule');
同样的代码段有效。
但是永久链接的设置需要再次保存。
在WordPress管理屏幕中,选择设置->永久链接,然后单击保存更改而不进行任何更改。
function wpd_foo_rewrite_rule() {
add_rewrite_rule(
'^foo/([^/]*)/?',
'index.php?page_id=$matches[1]¶m=foo',
'top'
);
}
add_action( 'init', 'wpd_foo_rewrite_rule' );
这将获取 foo/之后的任何内容并将其设置为查询的 pagename,然后 param 获取静态值 foo。如果您需要不同的网址模式,则需要为每个唯一模式制定额外的规则