在get_the_content或the_content内容过滤器中,是否可以知道窗口小部件是否实际执行(显示在侧边栏上)?
我想要做的是创建一个有选择地工作的内容过滤器 - 只有在小部件正在执行时 - 我不想仅影响小部件中的其他内容,而是在应用任何其他过滤器之前(优先级<10) ...)。在小部件完成执行后删除内容过滤器会很不错。
有很好的功能,比如is_page is_category,...但没有is_sidebar或类似的东西。
我确实尝试添加&amp;删除小部件显示功能中的过滤器,但似乎无法像这样添加过滤器。
答案 0 :(得分:0)
您可以将处理程序添加到get_sidebar
操作,在那里将一些全局变量设置为true,然后在函数结束时重置它。虽然不是优雅的解决方案。另一种方法是检查get_sidebar
函数存在的debug_backtrace结果,但我几乎可以肯定它会很慢。