Custom Post Type Paginierung – normale Lösungen helfen nicht

Ich habe mehrere benutzerdefinierte Post-Typen und muss sie abfragen und durchblättern können. Dies ist die Abfrage, die ich versuche:

$paged = ( get_query_var( 'paged' ) ) ? get_query_var( 'paged' ) : 1; $offset = ( 10 * $paged ) - 10; $args=array('paged'=>$paged, 'posts_per_page'=>10, 'post_type'=>'custom-post-type-name', 'offset' => $offset); query_posts($args); 

Ich habe die Permalinks zurückgesetzt und die Posts pro Seite von WordPress auf eine niedrigere Zahl als die, die ich abfrage eingestellt, und alles, was ich bekomme, ist ein 404, wenn ich nach / page / 2 / gehe (meine Permalinks sind als /%postname%-%post_id% ).

Am verwirrendsten ist jedoch, dass auf einer separaten Seite die folgenden functionen funktionieren:

 SELECT *, IFNULL(SUM(vote),0) as total FROM wp_posts post LEFT JOIN wp_wdpv_post_votes votes ON votes.post_id = post.ID WHERE post.post_type = 'custom-post-type-name' AND post.post_status = 'publish' AND post.post_date > DATE_SUB(NOW(), INTERVAL 1 DAY) GROUP BY post.ID ORDER BY total DESC LIMIT 0,3 

aber das Folgende wirft die gleichen 404 Probleme auf

 SELECT *, IFNULL(SUM(vote),0) as total FROM wp_terms term JOIN wp_term_taxonomy taxonomy JOIN wp_term_relationships relationship JOIN wp_posts post LEFT JOIN wp_wdpv_post_votes votes ON votes.post_id = post.ID WHERE term.term_id = taxonomy.term_id AND relationship.term_taxonomy_id = taxonomy.term_taxonomy_id AND term.slug = 'games' AND taxonomy.taxonomy = 'category' AND post.ID = relationship.object_id AND post.post_type = 'custom-post-type-name' AND post.post_status = 'publish' AND post.post_date > DATE_SUB(NOW(), INTERVAL 1 DAY) GROUP BY post.ID ORDER BY total DESC LIMIT 0,3 

Jede Hilfe hieran würde dankbar angenommen werden.

Solutions Collecting From Web of "Custom Post Type Paginierung – normale Lösungen helfen nicht"

Diese Lösung ist ein wenig schwierig:

  • Fügen Sie dieses Plugin WP Seitenzahlen hinzu .
  • Ändern Sie die Einstellung von WordPress Reading im Adminbereich von 10 (Standardeinstellung) auf 1. (Der Punkt nach der Erstellung von 1 ist, dass die Seite nicht gefunden wird 404)

  • Auf der Seite, auf der Sie die benutzerdefinierten Posts anzeigen möchten, müssen wir die Abfrage ändern, indem Sie unsere Optionen zur Standardabfrage hinzufügen:

< ?php $newQuery='showposts=5&post_type=custom-post-type-name&page='.$paged.'&'.$query_string; ?>

< ?php query_posts($newQuery); ?>

Was wir hier gemacht haben, ist, dass wir unsere Optionen hinzugefügt haben, ohne die Standardabfrage zu ändern.

hoffe hilfreich. Bitte sagen Sie uns, falls das nicht mit Ihnen funktioniert.