WordPress钩子直接在身体标签之后WordPress 5.2 或更高版本:WordPress 5.1 或更早版本:

2022-08-30 13:34:47

我在寻找用于我的插件的正确钩子时遇到问题。我正在尝试通过让我的插件添加一个函数来向每个页面的顶部添加一条消息。最好的钩子是什么?我想在标签后面插入内容。<body>


编辑:我知道现在已经三年了,但这是一张Trac票,适合任何感兴趣的人:http://core.trac.wordpress.org/ticket/12563


编辑:2019年7月31日

链接的Trac Ticket已关闭,因为此功能是在WordPress 5.2中添加的。您将在此处找到此功能的开发人员说明(需要启用 JavaScript 才能显示):

5.2 中的其他开发人员更新

由于历史原因,我不会将“正确答案”更新为提及5.2的答案,但请放心,我知道并且内置钩子是正确的。


答案 1

或者,如果您自己创建主题和/或可以对其进行修改,则可以使用WordPress的do_action功能自己创建一个操作。这也是他们创建其他钩子的方式。所以基本上在你的主题中,你会去你想去的地方,紧跟在标签之后,然后做这样的事情:<body>

do_action('after_body');

还可以将参数传递给操作回调,有关信息,请参阅链接的文档。

然后,您只需使用add_action函数即可挂接到它。

add_action('after_body', 'my_callback');

希望有所帮助。对不起,如果我误解了。


答案 2

WordPress 5.2 或更高版本:

使用wp_body_open钩。

WordPress 5.1 或更早版本:

这有点困难...大多数主题在该区域没有任何钩子。你可以将javascript / html解决方案挂钩并显示在页面顶部...有点像Stack Overflow是如何做到的,或者Twitter是如何做他们的通知的。wp_footer

这是WordPress中包含的所有钩子的最佳参考:http://adambrown.info/p/wp_hooks/


推荐