Paginierte Seiten zeigen korrekten Inhalt, Seitenumbruch-Links jedoch nicht

Ich verwende eine benutzerdefinierte WP_Query , um Beiträge auf der statischen Titelseite anzuzeigen. und Erzeugen numerierter Paginierungslinks mit paginate_links functionen. Das ist der Code, den ich habe …

 $latest_args = array( 'post_type' => 'post', 'category__not_in' => array( 3 ), 'ignore_sticky_posts' => 1, 'paged' => $paged, ); $latest_query = new WP_Query( $latest_args ); if ( $latest_query->have_posts() ) : while ( $latest_query->have_posts() ) : $latest_query->the_post(); get_template_part( 'content', get_post_format() ); endwhile; if ( $latest_query->max_num_pages > 1 ) : $big = 999999999; echo ''; endif; endif; wp_reset_postdata(); 

Aber wenn ich dies auf meiner static front page , wird immer auch der erste Seiteninhalt auf allen anderen Seiten angezeigt. Aber es wurde korrigiert, indem paged Parameter zur Abfrage hinzugefügt wurde, wie im Codex vorgeschlagen .

 if ( get_query_var('paged') ) { $paged = get_query_var('paged'); } elseif ( get_query_var('page') ) { $paged = get_query_var('page'); } else { $paged = 1; } 

Der doppelte Inhalt auf paginierten Seiten wurde behoben, aber zahlbasierte Paginierungslinks bleiben immer auf der ersten Seite. Es zeigt immer den ersten Link (1) als aktuell an, was es schwierig macht, den Rest der Seiten zu durchsuchen.

Dieser Code funktioniert zwar, wenn ich ihn auf einer anderen Seite als der static front page .

Irgendeine Lösung für dieses Problem.

BEARBEITEN: Aktualisieren

Ich habe versucht, alle Plugins zu deaktivieren und entfernte alle kundenspezifisch entwickelten functionen von functions.php aber das Problem existiert noch. Ich WP_Query , dass dies etwas mit der Verwendung der WP_Query oder WP_Query function zu tun hat.

In diesem Code sollte ein Fehler enthalten sein.

Solutions Collecting From Web of "Paginierte Seiten zeigen korrekten Inhalt, Seitenumbruch-Links jedoch nicht"

Statische Seiten funktionieren nicht mit paged Abfragevariablen, sie benötigen die Seitenvariable.

Dies ist der Grund, warum Ihr zweiter Codeblock die Abfrage funktioniert: Er verwendet die page var, wenn sie verfügbar ist.

Ihr paginierter Link-Code verwendet jedoch immer paged :

 ... 'format' => '?paged=%#%', ... 

So senden Sie paged Abfrage var aber auf der Suche nach page var.

Die Lösung besteht darin, dass Ihr format Argument die page var format , wenn es von einer statischen Seite verwendet wird.

 if ( $latest_query->max_num_pages > 1 ) : $var = is_page() ? 'page' : 'paged'; // < -- choose var here $big = 999999999; echo '

Ungetestet .