2

我正在构建一个设置自定义帖子类型的 Wordpress 插件,这一切似乎都工作得很好而且很花哨。但是,我有一个激活钩子,它应该(至少在理论上)设置我的永久链接并刷新我的重写规则,但它不起作用:

register_activation_hook( __FILE__, 'foodsafety_activate' );

function foodsafety_activate() {
  global $wp_rewrite;
  $wp_rewrite->add_rewrite_tag("%inspection%", '([^/]+)', "inspection=");
  $wp_rewrite->add_permastruct('inspection', $inspection_structure, false);    
  $wp_rewrite->flush_rules();
}

如果我进入Settings > Permalinks并点击“保存更改”,规则会被刷新并且永久链接按预期工作,所以我一定是在激活钩子的某个地方出错了。有任何想法吗?

4

2 回答 2

0

您是否复制了所有功能代码?因为,似乎 $inspection_structure 是空的..

于 2012-11-13T09:32:10.007 回答
0

你确定 register_activation_hook( FILE , 'foodsafety_activate' ); 在主插件文件中吗?我遇到过同样的问题。事实证明,注册激活仅在放置在主插件文件中时才有效。

于 2015-02-13T10:45:43.627 回答