web-dev-qa-db-fra.com

Trouver les auteurs les plus récents

Ce que je cherche à faire, ce sont les 16 derniers messages de 16 auteurs différents. En d’autres termes, il y aurait les 16 derniers messages, mais aucun auteur n’aurait plus d’un message sur la page.

La façon dont j'ai envisagé de le faire est de parcourir tous les auteurs, en supprimant les doublons, puis de limiter ce nombre à 16 et de l'utiliser pour générer les posts dans chaque boucle, mais j'imagine que cela serait lourd. serveur.

Aucune suggestion?

2
pete_schuster

Utilisez une requête SQL personnalisée pour récupérer les 16 derniers ID d'articles avec des auteurs uniques.

$post_IDs = $wpdb->get_col( "SELECT ID FROM $wpdb->posts WHERE post_type = 'product' AND post_status = 'publish' GROUP BY post_author ORDER BY post_date DESC LIMIT 16" );

Puis lancez une nouvelle requête avec l’argument post__in;

$recent_posts = new WP_Query( array( 'post__in' => $post_IDs, 'post_type' => 'product' ) );
4
TheDeadMedic