Zeige nur Top 3 Beiträge aus 3 Kategorien in Reihenfolge auf der Startseite an

Diese function zeigt die letzten 3 Beiträge von jeder Kategorie auf der Titelseite an:

// Only top 3 posts from CHR category add_action('pre_get_posts', 'ad_filter_categories'); function ad_filter_categories($query) { if ($query->is_main_query() && is_home()) { $query->set('category_name','chatham-house-rules'); $query->set('showposts', 3); } 

Ich möchte das noch zweimal mit zwei anderen Kategorien machen, aber es wird immer nur mit einem funktionieren. Außerdem wird standardmäßig die Einstellung posts_per_page im Admin-Steuerfeld verwendet. Irgendwelche Ideen, wie ich 3 letzte Beiträge aus 3 Kategorien in bestimmter Reihenfolge auf der Titelseite erreichen kann?

Solutions Collecting From Web of "Zeige nur Top 3 Beiträge aus 3 Kategorien in Reihenfolge auf der Startseite an"

Es gibt mehrere Möglichkeiten, dies zu tun, aber eine Möglichkeit würde ich in Betracht ziehen, wenn ich es wäre, würde ich es so machen. Auf der index.php oder einer anderen Seite, auf der die Beiträge erscheinen, führen Sie die folgenden drei Mal jeweils mit verschiedenen Kategorien durch:

 $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $arguments = array( 'category_name' => 'category' 'posts_per_page' => 3, 'paged' => $paged ); $wp_query->query($arguments); if (have_posts()) : while (have_posts()) : the_post(); the_content(); endwhile; endif; 

Der category_name kann eine durch Kommas getrennte Zeichenfolge sein, die es Ihnen ermöglichen sollte, drei oder mehr Kategorien zu haben.

Der Parameter paged wird benötigt, um die Posts pro Seite auf diese Weise zu setzen. Ist dies nicht der Fall, werden die Posts auf den folgenden Post-Seiten nicht korrekt angezeigt.

Die WP_Query-Referenz zeigt alle Filter an, die in der Abfrage verwendet werden können. Es bietet auch eine alternative Möglichkeit, die Abfrage zu verwenden.