mysql - 每个作者在 wordpress 中的最新帖子

标签 mysql wordpress group-by distinct

我有一个有 28 个用户的 Wordpress 站点,我想从每个用户那里获得最新的帖子(每个用户只有一个帖子)。我试过使用 DISTINCT 和 GROUP BY 的自定义 sql,但没有成功。

这是我离得最近的一次。它获取独特的帖子,但最旧的帖子而不是最新的。

function last_post_per_user() {
    global $wpdb;
    return $wpdb->get_results('SELECT ID FROM '.$wpdb->posts.' WHERE post_status=\'publish\' AND post_type=\'post\' AND post_author!=\'1\' GROUP BY post_author');
}

$posts = last_post_per_user();

foreach ($posts as $post) {
    $post_id[] = $post->ID;
}

query_posts( array( 
    'post_type'         => 'post',
    'posts_per_page'    => 10,
    'post__in'          => $post_id
) ); 

有没有人对如何解决这个问题有任何建议?

(实际上他妈的一整天都在尝试解决这个问题)

最佳答案

尝试替换这个:

query_posts( array( 
    'post_type'         => 'post',
    'posts_per_page'    => 10,
    'post__in'          => $post_id
) ); 

用这个:

query_posts( array( 
    'post_type'         => 'post',
    'posts_per_page'    => 10,
    'post__in'          => $post_id,
    'orderby'           => 'date',
    'order'             => 'DESC'

) ); 

它将显示最新的帖子。

关于mysql - 每个作者在 wordpress 中的最新帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8947658/

相关文章:

php - Codeigniter - 路由访问模型和数据库

html - 页脚不配合,评论框消失了

mysql - ONLY_FULL_GROUP_BY ON 的 Symfony 查询

MySQL Group by a field based on another field maximum value of another field IN THE GROUP(不在表中)

php - SQL 语法错误 :Mysqli prepare with NOW()

mysql - 为什么当 xampp 运行 mysql 时我的 Node.js 代码可以工作,但当 mysql 通知程序运行 mysql 服务器时却不能工作?

php - pdo 准备好的语句不更新

javascript - 鼠标相对于单击元素的位置

php - 将多个自定义数据数组添加到 WooCommerce 自定义 Ajax 上的购物车项目添加到购物车

python - Pandas groupby 索引不正确