得到通知是wordpress“WP_Scripts::localize被错误地调用”

完整消息:注意:WP_Scripts::localize 被错误调用。$l10n 参数必须是一个数组。要将任意数据传递给脚本,请改用 wp_add_inline_script() 函数。有关更多信息,请参阅在 WordPress 中调试。(此消息是在 5.7.0 版本中添加的。)在 /home3/dduconne/public_html/wp-includes/functions.php 上的第 5313 行

刚将wordpress更新到5.7.0后出现

回答

好的,因为有很多观点,而之前的答案只是把它放在地毯下。

是的,现在是警告,但谁知道会发生什么,这是有原因的警告,禁用某些东西并不能解决它,开发人员现在将其设置为警告是有原因的。

在我们等待插件开发人员解决问题的同时,您可以通过php_xdebug在 php.ini 中启用来找出问题的根源。我建议在调试后不要离开它,因为我不确定启用它的性能成本。

php_xdebug将返回所有受影响文件的堆栈,您可以从那里追踪到问题的根源。找到来源后的修复非常容易。罪魁祸首很可能是wp_localize_script()要求最后一个参数为array()!

所以你会发现这样的事情:

wp_localize_script( 'handle', 'object_name', 'l10n_culprit_string' );

应该变成:

wp_localize_script( 'handle', 'object_name', array( 'l10n_culprit_string' ) );

问题的解决方案来自这里

  • this one should be the correct answer. Thanks!

以上是得到通知是wordpress“WP_Scripts::localize被错误地调用”的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>