注意:wp_enqueue_style被错误地调用了。在wp_enqueue_scripts,admin_enqueue_scripts或
login_enqueue_scripts挂钩之前,脚本和样式不应注册或排队。请参阅WordPress中的调试以获取更多信息。 (此消息是在版本3.3中添加的。)在行3049的
wp-includes / functions.php中
注意:wp_enqueue_script被错误地调用。在wp_enqueue_scripts,
在WordPress中进行调试以获取更多信息。 (此消息是在版本3.3中添加的
。)在3049行的wp-includes / functions.php中
警告:无法修改标题信息-
已发送的标题(输出在wp-login.php中的wp-includes / functions.php:3049处开始,在
第415行
警告:无法修改标题信息-
已经发送的标题(输出开始于wp-login.php中的wp-includes / functions.php:3049),位于427行
。在其他站点上,我只有两个第一个错误。我尝试修复它,但不能。有什么建议吗?
#1 楼
禁用所有插件并切换到默认主题。现在应该消失了。然后逐步启用每个插件,直到问题再次出现。您现在就知道了源代码,比如说一个插件。找到该函数的所有出现,然后确保它们绑定到特定的动作:
wp_enqueue_script
应当为动作调用br /> wp_register_script()
中的一项动作wp_loaded
,wp_enqueue_script
,wp_enqueue_scripts
或admin_enqueue_scripts
(有关后者,请参见此线程)。评论
问题是我无法登录,因为我也收到了Cookie的奇怪错误。错误说,我已经阻止了浏览器中的cookie,但是我没有阻止它们……这太奇怪了,因为我今天所做的所有工作都是在style.css中添加了几行,一切都很好,但是我遇到这些错误后的几个小时。
–突袭
2014年6月6日20:12
@raiden然后通过FTP重命名您的插件目录,对当前活动的主题执行相同的操作。
– fuxia♦
2014年6月6日20:13
现在,我可以登录我的面板了……谢谢!但是现在我又收到一个错误警告:无法修改标头信息-行896的wp-includes / pluggable.php中已经发送过的标头(输出从wp-includes / functions.php:3049开始)
–突袭
2014年3月6日20:20
#2 楼
基于Gregory Schultz的解决方案:将所有脚本和样式包装在一个函数中,并将该函数与目标
enqueue
动作挂钩。 > wp_enqueue_scripts
—前端admin_enqueue_scripts
—管理页面login_enqueue_scripts
—登录页面评论
这肯定有帮助,谢谢:)
– jrran90
20-11-29在14:29
#3 楼
您可以使用Query Monitor插件来缩小此错误的来源,而不必一个接一个地禁用所有插件或修改代码库以进行调试。当您在控制台中看到此错误报告时:
wp_register_style被错误地调用。在wp_enqueue_scripts,
在WordPress中进行调试以获取更多信息。 (此消息已在版本3.3.0中添加
。)
最后一列(
Component
)将告诉您触发错误的插件。从那里在该插件(或主题)中进行搜索以查找并修补问题。#4 楼
发生这种情况的原因是,这些函数是直接从functions.php文件中调用的,而不使用函数。找出functions.php中的哪些行不在这样的函数中,然后添加它们。datepicker的示例:
-而不是在functions.php中:
wp_enqueue_script('jquery-ui-datepicker');
wp_enqueue_style('jquery-ui-css', '//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css');
wp_enqueue_style('jquery-ui-css', '//ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css');
-我们添加此
// We define the function: function MYTHEME_scripts() { wp_enqueue_script('jquery-ui-datepicker'); } // Add the functions to WP loading list. add_action( 'wp_enqueue_scripts', 'MYTHEME_scripts' ); function MYTHEME_styles() { wp_enqueue_style('jquery-ui-css', '//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css'); wp_enqueue_style('jquery-ui-css', '//ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/smoothness/jquery-ui.css'); } // Add the functions to WP loading list. add_action( 'wp_enqueue_style', 'MYTHEME_styles' );
希望它起作用
#5 楼
这意味着wp_enqueue_script()
有3个“端点”,它们是前端的wp_enqueue_scripts,用于登录屏幕的login_enqueue_scripts,用于管理仪表板的admin_enqueue_scripts。检查此链接。 由于
wp_enqueue_script()
被不正确地调用而出现此错误。评论
我了解其中的内容,但不知道如何(实现?)此“解决方法:改用wp_enqueue_scripts”。
–突袭
2014年6月6日20:26
这意味着您只需要使用wp_enqueue_scripts而不是wp_print_styles,但是我怀疑这与您的情况有关。这只是故障排除的一个例子。在您的情况下,插件或主题中的某些功能会滥用wp_enqueue_script(),因此您会收到此错误...我的猜测。
– JMau
2014年6月6日20:37
我收到通知:wp_register_style被错误地调用。在wp_enqueue_scripts,admin_enqueue_scripts或login_enqueue_scripts钩子之前,不应注册或排队脚本和样式。我将所有脚本和样式都包装在一个函数中,然后通知消失了。
–格雷戈里·舒尔茨(Gregory Schultz)
18年5月24日在0:24
除此之外,我没有任何错误
–格雷戈里·舒尔茨(Gregory Schultz)
18年5月24日,0:25
#6 楼
将其包装在名为wp_enqueue_scripts的钩子中。示例:
add_action( 'wp_enqueue_scripts', function() {
wp_enqueue_style('style', get_stylesheet_uri(), false, false, 'all');
wp_enqueue_script( 'custom-script', get_stylesheet_directory_uri() . '/script.js', true );
});
评论
这些通知似乎很容易解释。您尝试过什么,没有用?@s_ha_dum我已经尝试了很多我在Google上发现的东西...刚才toscho的解决方案对我有用,我可以登录到管理面板,但是我看到的是加载样式有问题,因为字体与以前不一样。我不断收到此错误: