WordPress 3.1和Disqus引发警告:帖子列表中出现Number_Format()错误

时间:2011-02-24 作者:Evan Wondrasek

升级到WordPress 3.1后,Posts列表中每个帖子的评论计数现在显示PHP错误

Warning: number_format() expects parameter 1 to be double, string given in /wp-includes/functions.php on line 155.

这个问题肯定与Discus comments插件有关,我怀疑它操纵了评论计数。我了解了如何通过编辑WP核心文件/WP admin/includes/class WP list表来修复此错误。php和中性化“get\\u comments\\u number()”函数,但我更愿意找到一个解决方案,解决在Discus中被操纵的任何问题。php。

有什么想法吗?

1 个回复
最合适的回答,由SO网友:Evan Wondrasek 整理而成

经过一番挖掘,我成功地修复了它,而没有修改任何WP核心文件。

本质上,discus篡夺了WordPress的注释计数,并用唯一标识符将其封装在自己的注释计数中。由于WP在查看帖子列表时调用自己的评论计数,因此它得到的是一个用HTML填充的字符串值,而不是一个带有评论计数的纯双倍值。这破坏了它的内部功能number_format_i18n().

修复方法是编辑取消论文。php并具有以下功能function dsq_comments_number($count) 只需返回$count. 只需删除额外的HTML。

希望Discus能很快对此进行修复,我过去对他们如何处理评论计数有过问题。

编辑:如果您需要更多解释,我刚刚发布了修复的完整报告:http://www.techerator.com/2011/02/fix-wordpress-3-1-and-disqus-plugin-error-when-returning-comments-count/

结束

相关推荐

How do you debug plugins?

我对插件创作还很陌生,调试也很困难。我用了很多echo,它又脏又丑。我确信有更好的方法可以做到这一点,也许是一个带有调试器的IDE,我可以在其中运行整个站点,包括插件?