简而言之,你不能。
很长一段时间的答案是,有很多选择可以这样做,但它们都非常复杂,容易出现错误,如果你不是一个老练的PHP黑客,可以盲着刺穿WP代码库,那么最肯定的是,你不想调查任何东西。
如果是,一种选择是通过使用侧栏来避开WP小部件API。主题中的php文件,而不是dynamic_sidebar()
呼叫。
如果你想让它在你无法控制的主题上发挥作用,请注意get_sidebar()
为此发挥作用。它有两个潜在的利益诉求:
do_action( \'get_sidebar\', $name )
locate_template($templates, true)
但即便如此,并不是所有的主题都称之为
dynamic_sidebar()
和小部件。
根据我的经验,这些问题甚至更难破解。有这样的地方\'sidebars_widgets\'
或\'register_sidebar\'
或\'widgets_init\'
您可以尝试在其中“导入”一些伪装成真正的小部件区域而不是真正的小部件区域的内容。
然而,请注意,即使这样,当dynamic_sidebar()
被调用。后者包括以下内容,可能会覆盖这些内容:
apply_filters( \'dynamic_sidebar_params\', $params )
do_action( \'dynamic_sidebar\', $wp_registered_widgets[$id] )
还有大量其他挂钩和私有API,与侧栏本身或小部件配置相关联,您需要对其进行监控。再多的询问WPSE都不会让您不必仔细查看WP代码库。
我想强调最后一点:你must 阅读并理解与WP Widgets相关的意大利面代码,以便对上述内容有一点了解。此外,如果您继续,在可预见的未来监控it的任何更改是极其重要的。
如果不这样做,你的网站就会被炸得面目全非,甚至更糟,因为入侵WP私有API容易带来错误的副作用,并且经常会受到API更改的影响。(顺便提一下,下一个是WP待办事项列表中的热门话题。)