我已经创建了一个插件来注册一个新的CPT,但它不能工作,因为我必须flush_rewrite_rules()
(我可以通过进入permalink设置页面并保存,但这不是正确的方式)
我在wordpress代码库中读到,我必须在激活时使用flush_rewrite_rules()
,但是它不能工作,因为在注册CPT之前运行的flush_rewrite_rules()
不能工作,它必须在.
我正在使用这个https://github.com/DevinVinson/WordPress-Plugin-Boilerplate
它有一个在激活插件时运行的类,我在这里添加了这个flush_rewrite_rules()
例如,我使用的样板已经使用了激活/失活类的结构。
function activate_l_erbario() {
require_once plugin_dir_path( __FILE__ ) . 'includes/class-l-erbario-activator.php';
L_Erbario_Activator::activate();
register_activation_hook( __FILE__, 'activate_l_erbario' );
在课堂内部-L-erbario-activator.php我有
class L_Erbario_Activator {
public static function activate() {
}
}
带有插件
的GITHUB
https://github.com/NeaMitika/CPT-Erbario-Wordpress
/admin/class-l-erbario-admin.php ->我在这里注册CPT
/include/class-L-erbario.php ->,在这里,我使用CPT添加add_action
发布于 2020-11-10 10:02:40
经过几天的尝试和尝试.我问了一个使用Wordpress插件样板开发的youtuber,他告诉我这篇文章:
https://andrezrv.com/2014/08/12/efficiently-flush-rewrite-rules-plugin-activation/
它添加了一个选项inside_option表,它将根据以下内容刷新重写规则:)它工作得很完美
https://wordpress.stackexchange.com/questions/377600
复制相似问题