Wordpress - 多次调用admin_init挂钩?

时间:2015-05-27 07:48:28

标签: php jquery wordpress

我的Wordpress网站上遇到了一个问题,我跟踪了admin_init被调用了两次。

我尝试停用所有插件,问题就消失了。然后我恢复了每个插件,发现哪一个导致了问题。

我的问题是,如何找到额外admin_init调用的原因?

这个插件是对网站的定制,所以我不能简单地用一个不同的插件替换它(大量模糊)我自己混淆了。

这是我在对这个问题进行一些研究后到目前为止所得到的......

我已经补充道 remove_filter("wp_head", "adjacent_posts_rel_link_wp_head",10); 到functions.php文件(虽然这可能只会停止" init"挂钩被调用两次,而不是" admin_init")?

我设置了一个函数,每次调用admin_init时都会向我发送一封电子邮件。在生成电子邮件的同时,我向其添加了以下代码:

$backtrace = print_r(debug_backtrace(), true);

然后将$ backtrace添加到电子邮件文本中。

我收到的第一封电子邮件的完整回溯显示了导致来自" admin-ajax.php"的admin_init调用的所有功能。第二个admin_init通话电子邮件根本没有任何回溯信息?

我还读到,对网站(或其他包含)返回404错误的图像可能会导致多次调用init(可能是admin_init挂钩)。

我右键单击了"检查了元素"在页面上打开Firebug窗口并查看选项卡,但我不能100%确定如何检查这一点。我没有看到任何奇怪的东西或404在任何标签下,但如果有人可以澄清检查程序,我将能够重新检查确定。

那么......关于我为什么要获得额外的admin_init电话以及我可以在软件中检查以查看其生成位置的任何其他想法?

感谢。

1 个答案:

答案 0 :(得分:0)

我已经设法解决了这个问题。

我在wp-config.php中设置了以下内容: error_reporting(E_ALL); ini_set('display_errors', 1);

这开启了严格的故障报告。

我的网站立即充斥着关于问题的通知。

我系统地检查了每一个,然后我的原始问题也消失了。

我不确定确切的修复方法,但无论如何这可能都是网站的特定内容,所以我想发布此文章,以防将来帮助其他人。