wordpress - flush_rewrite_rules() 不适用于 update_option_{$option}
问题描述
有人可以向我解释为什么冲洗在我的情况下不起作用。我添加了一个具有默认值的自定义设置页面,但是当我点击保存更改时它不起作用。我使用admin_init
钩子来注册这样的设置。
register_setting(
'my_general',
'my_general_settings',
array(
'default' => 'hello',
)
);
我添加了部分和字段,并且这些工作。现在我遇到了这个问题。如果我更新或保存设置,则update_option_my_general_settings
不起作用。它不是在刷新规则。这是我在这个钩子中使用的函数代码。
if ( $old_value === 'hello' || $value === 'hello' ) {
// Flush rules
flush_rewrite_rules();
}
请记住,我将这些参数提供给函数$old_value, $value, $option
在我手动刷新设置内的永久链接后,过滤器mod_rewrite_rules
将数据添加到。.htaccess
但flush_rewrite_rules()
似乎并没有自动刷新永久链接。
我想要的是当用户更新设置时,应该填充flush_rewrite_rules。
我非常感谢您能提供的任何帮助。
解决方案
推荐阅读
- python - BeautifulSoup 测试对象类型
- angular - Angular - SpringBoot - CORS(未知 url):0 未知错误
- url - Readiness 和 Liveness Probe Endpoints 的 URL 应该是什么?
- java - 在 Jenkins 中运行 maven 时出现 ClassNotFoundException
- ios - 如何在选择时为 UICollectionViewCell 内容的扩展设置动画?
- javascript - 如何从工具栏拖放 mxGraph 中的自定义图像
- oracle - ACL error when trying to send mail via Oracle UTL_SMTP
- r - 将 R 中 geom_label_repel 中的“a”更改为其他内容,而不仅仅是删除它
- visual-studio-code - Visual Studio 代码版本:1:30.0 - 如何将终端输出移动到底部
- formatting - 如何在代码突出显示中为 Redmine markdown 添加换行符?