问题描述
最近我不得不转到另一个域,不得不在 enw 服务器上重新创建我所有的 MySQL 表。我注意到,对于一些帖子,评论数量翻了一番。示例 – http://inversekarma.in/scraps/you-dont-mess-with-the-rajinikanth/。
在上面的帖子中,只有 4 条评论,但评论鞋 8 评论。我不知道它不是一个 theme-related 问题,因为这只发生在几个帖子。
有人可以告诉我如何编写 MySQL 查询来重新计算所有帖子的评论?还是插件?
最佳解决方案
尝试这段代码:
警告:这是一个 PSEUDOCODE!
$entries = $wpdb->get_results("SELECT * FROM wp_posts WHERE post_type IN ('post', 'page')");
foreach($entries as $entry)
{
$post_id = $entry->ID;
$comment_count = $wpdb->get_var("SELECT COUNT(*) AS comment_cnt FROM wp_comments WHERE comment_post_ID = '$post_id' AND comment_approved = '1'");
$wpdb->query("UPDATE wp_posts SET comment_count = '$comment_count' WHERE ID = '$post_id'");
}
或者 you might want to try solution from this page(虽然这不是正确的方式,因为您将为每个帖子添加另一个查询)
次佳解决方案
似乎是一个常见的问题。尝试这个插件:
http://wordpress.org/extend/plugins/web-ninja-comment-count-fixer/
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。