过滤器打开the_content
不以“每短码”为基础应用。将帖子内容传递给第一个过滤器,然后将修改后的帖子内容传递给第二个过滤器,然后将前两个过滤器修改后的内容传递给第三个过滤器,依此类推。
无法删除the_content
过滤器,只针对您的短代码,因为过滤器不是那样应用的。
有时,您可以通过操纵注册过滤器的优先级来避免过滤器问题。
add_filter(\'the_content\', \'twitter_url\',1); // run the filter very early
add_filter(\'the_content\', \'twitter_url\',100); // run the filter late
但是,在您的案例中,涉及到两个过滤器——添加
twitter_url
和
do_shortcodes
-- 而不是由您添加的,因此它更复杂,更容易出错。
你可以改变你的插件do_shortcodes
跑步。
remove_filter(\'the_content\', \'do_shortcode\', 11);
add_filter(\'the_content\', \'do_shortcode\', 100);
这可能会让你绕过这个问题。我在我维护的网站上做过这件事。令人担忧的是,您的插件正在更改Core注册的内容。这可能会给主题或其他插件带来麻烦。
(可能)正确的答案,这是不可能构建的,因为您发布了伪代码,并且没有准确解释what 推特插件对你的代码所做的就是找出你的短代码发生了什么,为什么会这样,并找到一种方法来保护该短代码的内容不受插件或短代码本身的影响。一个小的重分解可以解决这个问题,但这意味着需要查看实际的代码,而不是一些无意义的填充代码。