插件以正确的方式重写规则

时间:2016-01-29 作者:guillaume.molter

我需要为我的插件创建重写规则。这个插件将在一个非常大的WordPress网络(+2000个站点)上运行,因此性能非常重要。

大多数教程和法典建议flush_rewrite_rule 插件激活时,然后add_rewrite_rule() 在…上init. 但是,由于重写规则存储在DB中,在我看来,运行这些规则是在浪费资源add_rewrite_rule 在每个init (=每次页面加载)。

另一方面,你不能只依赖插件激活挂钩,因为如果另一个插件刷新规则,那么你的重写规则就会丢失。

我知道add_rewrite_rule 只是一些简单的字符串和数组操作,就资源而言并不是非常昂贵,但仍然感觉不对。。。。

我错过什么了吗?

1 个回复
最合适的回答,由SO网友:Otto 整理而成

add\\u rewrite\\u rule函数不会更改数据库。内存中只有一个数组。这不是一个昂贵的手术。

另一种方法是添加代码来检测规则是否存在,这实际上比仅仅修改数组要昂贵。

相关推荐

[Zapier+WP Webhooks Pro]:自定义字段在第一个逗号或分号处被截断

我在用Zapier和WP Webhooks Pro 将Google Sheet和WP连接到自动发布添加到电子表格的每一行的帖子。它的工作原理与预期一样,所有字段(包括自定义字段)都已正确填充,只有那些具有逗号和/或分号字符串的字段除外。那些被切断了。Setting up the custom field in ZapierSuccess output in Zapier after posting to WPCustom field in WP (cut off after semicolon)非常感谢您