Wordpress重写规则

时间:2016-01-28 17:30:27

标签: wordpress rewrite

假设我有一个portfolio_categories/guttersspouting/

的URI

我怎样才能重写一个函数来改变它"products"

1 个答案:

答案 0 :(得分:1)

按要求确定这与uri“产品”完全匹配。如果将代码发布给第三方,这是不可取的,就像它们创建一个名为product的页面一样,它将遵循此规则。

顺便说一下,我假设您的意思是post_type = page(也适用于帖子,请参阅add_rewrite_rule中的post_id=?您需要将其更改为您要重定向到的网页的帖子ID。

add_action('init', 'new_rewrite_rule');
function new_rewrite_rule(){
   // matches product exactly, product/aproduct will fail, etc
   // you need to add your own post_id into the function below. 
   add_rewrite_rule('^product$','index.php?page_id=12','top');  
}

您需要刷新重写规则才能使用(转到永久链接设置页面,只需点击保存按钮)

刷新重写规则的代码版本,让它在wp_loaded上运行不是一个好主意,应该在激活钩子上,但是对于测试,这样做:

function new_flush_rewrite_rules() {

    flush_rewrite_rules();
}

add_action( 'wp_loaded', 'new_flush_rewrite_rules' );

请注意,您也可以在帖子编辑屏幕中手动执行此操作。