WP_FOOTER挂钩如果不是单一的,则在类内不起作用

时间:2015-05-24 作者:Maikel

我在类中放置了一个函数,然后使用add\\u操作和wp\\u footer钩子调用它,如下所示。

class mwdes_general {

  public function __construct() {
    add_action( \'wp_footer\', array( $this, \'mwdes_keynav\') );
  }

  public function mwdes_keynav() {
  // Do something
  }

}
当打开一篇文章或一个页面时,代码运行得很好,但是由于某种原因,我不理解它没有在运行postloop的frontpage上执行。我检查了我正在使用的主题的索引文件,并加载了get\\u footer(),因此我无法理解挂钩为什么不起作用。

在类外运行函数时,它可以在single和frontpage上运行。我错过什么了吗?

1 个回复
SO网友:Ruturaj

不确定这是否有用,但请尝试更换$this 具有__CLASS__ 在里面__construct.

add_action( \'wp_footer\', array( __CLASS__, \'mwdes_keynav\') );

结束

相关推荐

覆盖或替换WP_FOOTER中的代码

我有一段代码通过以下方式动态添加到我的页脚中add_action(\'wp_footer\' ...). 不幸的是,我不知道如何使用常规方法删除它,我已经研究了以下问题,并尝试使用那里的解决方案:remove_action or remove_filter with external classes?但我没有找到任何答案,所以现在我正在寻找替代方案。有没有一种方法可以preg_replace 关于wp_footer()? 有没有其他方法可以移除wp_footer 不使用remove_action()?Mo