如果您以编程方式添加了一个短代码,但没有在该请求上查看该代码,那么它仍然会被执行吗?

时间:2019-11-28 作者:John Dee

即使没有返回结果,也会执行对短代码的回调,这是预期的行为吗?还是短代码只在显示时执行?

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

除非解析并执行短代码,否则不会执行短代码回调。因此,如果添加了一个短代码,则除非该短代码已在页面上的某个位置使用,或在已使用的函数或模板中手动执行,否则其回调将不会运行,并且只会在解析该短代码时运行。

因此,将短代码注册到add_sortcode() 不会单独执行回调函数。

相关推荐

如何从派生的进程中使用STRING_SHORTCODES()?

我有一个插件,它生成一个进程来执行打印功能。要打印的项目(在本例中为Woocommerce产品)通过URL传递(通过product_id). 在进行打印之前,必须从产品描述中删除所有注册的短代码。如果我打电话strip_shortcodes() 它什么都不做。我猜注册的短代码数组超出了范围?是否有人能提出一种有效的方法,使流程能够使用strip_shortcodes()?