我在使用 Disqus 时遇到了一个问题,它在许多帖子上创建了重复的评论,有时同一条评论有 4 个重复。我一直在尝试手动删除这些评论,但我们总共有超过 10K 条评论,不幸的是,这种情况是偶然发生的,只发生在某些帖子上。所以...
有谁知道 mysql 查询,我可以通过搜索与评论本身或作者匹配的条目来检测和删除重复的评论?评论 ID 不重复(它为每个评论 ID 创建了新的评论 ID),所以我不确定如何在 mysql 中执行此操作(加上我不太擅长:-)...任何帮助将不胜感激。谢谢。
改进 Blackbarn 的建议,尝试这个(备份数据库后):
global $wpdb;
$comments = $wpdb->get_results("SELECT * FROM ".$wpdb->prefix."_comments"
." ORDER BY comment_post_ID, comment_content");
$prev = NULL;
foreach($comments as $comment) {
if ($prev && $prev->comment_content == $comment->comment_content
&& $prev->comment_post_ID == $comment->comment_post_ID ) { // add maybe other rules here
$wpdb->query("DELETE FROM ".$wpdb->prefix."_comments WHERE comment_ID = ".$comment->comment_ID);
}
else
$prev = $comment;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)