Paging funktioniert nicht?
-
16-10-2019 - |
Frage
Ich habe meinen eigenen benutzerdefinierten Post -Typ und 15 Elemente dort.
Dieser Code zeigt alle Elemente:
<?php $loop = new WP_Query( array( 'post_type' => 'my_post_type', 'posts_per_page' => 15 ) );
while ( $loop->have_posts() ) : $loop->the_post(); ?>
(...)
Wenn ich post_per_page in "5" ändere, sollte es 3 Seiten geben, es wird jedoch nur 5 Elemente angezeigt und es gibt keine anderen Seiten (oder zumindest weiß ich nicht, wie ich darauf zugreifen soll).
Dieser Code zeigt nichts an:
<?php if ( $wp_query->max_num_pages > 1 ) : ?>
{menu or any html code}
<?php endif; ?>
Vielleicht mache ich etwas falsch? Ich habe den gesamten Code/die gesamte Schleife in der Datei Seitenmypostype.php.
Ich habe diesen Code ausprobiert:
$temp = $wp_query;
$loop= null;
$paged = get_query_var('paged') ? get_query_var('paged') : 1;
$loop = new WP_Query( array(
'post_type' => 'my_post_type',
'paged' => $paged,
'posts_per_page' => 2 ) );
while ( $loop->have_posts() ) : $loop->the_post(); ?>
Aber kein Glück ... wenn ich WordPress/my_post_type/page/2 (Seite/3 usw.) eingeben kann. Manuell sehe ich andere Seiten und sie arbeiten und sehen gut aus. Aber ich kann den Standard -Navi nicht wiederholen ... :(
Lösung
Beantwortete eine Frage, die in den Foren von WordPress.org praktisch mit dieser kürzlich identisch ist.
Benutzerdefinierte Post -Archiv -Seite - Pagination funktioniert nicht
Ich habe in diesem Thread eine Arbeit gewährt, die auch für Sie funktionieren sollte.
:)
BEARBEITEN: Sie müssen auch den Paging -Parameter zu Ihrer Abfrage hinzufügen.
Z.B.
$args = array(
'post_type' => 'my_post_type',
'paged' => get_query_var('paged') ? get_query_var('paged') : 1,
'posts_per_page' => 15,
);
$loop = new WP_Query;
$loop->query( $args );
Ich habe den Code neu formatiert, um ihn ein wenig lesbarer zu machen, das Endergebnis wird gleich sein.