更多信息
wp_footer
动作是由wp_footer()函数在用户模板的标签附近触发的。虽然这是依赖于主题的,但它是最基本的主题挂钩之一,因此得到了相当广泛的支持。
这个钩子不提供任何参数。您可以通过将函数echo输出到浏览器或让它执行后台任务来使用这个钩子。函数不应该返回,也不应该接受任何参数。
这个钩子依赖于主题,这意味着它取决于每个WordPress主题的作者来包含它。它可能不适用于所有主题,所以在使用它时应该考虑到这一点。
当包含时,此函数的默认输出是将在主题顶部显示管理栏。它应该保存在每个主题的页脚中,因为大多数插件都将其脚本文件或函数绑定到此挂钩。
这个钩子是一个动作,这意味着它主要用作事件触发器,而不是内容过滤器。这是一个语义差异,但它将帮助您记住这个钩子的作用。
源码
更新日志
版本 | 描述 |
---|---|
1.5.1 | 开始引入 |
使用示例
示例代码:
function your_function() { echo 'This is inserted at the bottom'; } add_action( 'wp_footer', 'your_function' );
从Codex迁移的示例:
如果要影响钩子执行的时刻,可以将一个整数作为第三个参数附加到
add_action
:<?php function your_function() { echo '<p>This is inserted at the bottom</p>'; } add_action( 'wp_footer', 'your_function', 100 ); ?>
数字越高,优先级越低,因此您的钩子将在页面的更下方执行。排队引入脚本按优先级20执行。
在wordpress 5.8版本中,动作do_action(‘wp_footer’)似乎是在新的基于区块的Widgets屏幕上的每个小工具之后调用的。我想在函数中添加一个条件来限制这一点。
<?php function wpdocs_your_function() { if ( is_admin() ) { return; } echo 'This is inserted at the bottom'; } add_action( 'wp_footer', 'wpdocs_your_function' ); ?>
从Codex迁移的示例:
要加载jQuery,需要使用enqueue函数。如上所述,以优先级20执行的排队脚本。
<?php function load_js() { wp_enqueue_script('jquery'); } add_action( 'wp_footer', 'load_js'); ?>