我正在写一个脚本来显示最近10篇“活跃”的WordPress博客文章(即那些有最新评论的文章)。问题是,列表有很多重复项。我想把复制品去掉。有没有一种简单的方法可以通过更改MySQL查询(比如IGNORE,WHERE)或其他方法来实现这一点?以下是我目前掌握的情况:

<?php

function cd_recently_active() {
    global $wpdb, $comments, $comment;
    $number = 10; //how many recently active posts to display? enter here

if ( !$comments = wp_cache_get( 'recent_comments', 'widget' ) ) {
    $comments = $wpdb->get_results("SELECT comment_date, comment_author, comment_author_url, comment_ID, comment_post_ID, comment_content FROM $wpdb->comments WHERE comment_approved = '1' ORDER BY comment_date_gmt DESC LIMIT $number");

    wp_cache_add( 'recent_comments', $comments, 'widget' );
}
?>

最佳答案

查看SELECT语句的DISTINCT选项。或者按语法分组(查看相同的链接)。尽管它们的工作方式不同,但这两种方法最有可能帮助你得到你想要的东西。

关于php - MySQL-跳过重复的WordPress条目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/306466/

10-15 14:58