In allen Kategorien werden die gleichen Posts angezeigt

Stundenlang gegoogelt und nirgendwo eine Lösung gefunden. =)

Diese Lösung funktioniert nicht so gut: Alle Beiträge in der aktuellen Kategorie anzeigen

Unabhängig davon, wie ich meine query_posts – es zeigt immer alle Beiträge in allen Kategorien an.

 $cat = get_query_var('cat'); $PozCat = get_category ($cat); //$PozCat->id query_posts('posts_per_page=-1&cat='.$PozCat->id); while ( have_posts() ) : the_post(); /* Include the post format-specific template for the content. If you want to * this in a child theme then include a file called called content-___.php * (where ___ is the post format) and that will be used instead. */ get_template_part( 'content', 'category' ); endwhile; 

Solutions Collecting From Web of "In allen Kategorien werden die gleichen Posts angezeigt"

query_posts bricht das Haupt-Query-Objekt ( $wp_query ), das das Query-Objekt und alle relevanten Query-Informationen enthält, die alle Conditional-Tags und Paginierung und $wp_query , was bedeutet, dass es absolut nutzlos ist, Informationen zum Haupt-Query-Objekt zu verwenden Es wurde durch query_posts die die query_posts zurücksetzen, beschädigt.

Das ist der Hauptgrund warum man niemals query_posts verwenden query_posts .

Da dies eine Kategorieseite ist, entfernen Sie einfach die folgenden Zeilen

 cat = get_query_var('cat'); $PozCat = get_category ($cat); //$PozCat->id query_posts('posts_per_page=-1&cat='.$PozCat->id); 

Ihre Kategorieseite wird wieder normal funktionieren. Wenn Sie die Hauptabfrage auf Ihrer Kategorieseite ändern müssen, verwenden Sie pre_get_posts , um die pre_get_posts korrekt zu ändern, bevor SQL zum Ausführen der Hauptabfrage erstellt wird. Im Folgenden werden alle Beiträge auf Ihren Kategorieseiten zurückgegeben

 add_action( 'pre_get_posts', function ( $q ) { if ( !is_admin() // Only target front end && $q->is_main_query() // Only target the main query && $q->is_category() // Only target category pages, change to $q->is_tax() for taxonomy pages ) { $q->set( 'posts_per_page', -1 ); } });