it-swarm.com.de

Benutzerdefinierte Post-Typ-Paginierung - normale Lösungen helfen nicht

Ich habe mehrere benutzerdefinierte Beitragstypen 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 Beiträge pro Seite von WordPress auf eine niedrigere Zahl als die von mir abgefragten festgelegt. Alles, was ich erhalte, ist eine 404, wenn ich zu/page/2/gehe. (Meine Permalinks sind als /%postname%-%post_id% festgelegt.) ).

Am verwirrendsten ist jedoch, dass auf einer separaten Seite Folgendes aufgeführt ist:

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 hierzu wäre dankbar.

3
Alan

Diese Lösung ist etwas knifflig:

  • füge dieses Plugin hinzu WP-Seitenzahlen.
  • ändere das Wordpress Reading-Einstellung vom Admin-Bereich von 10 (dies ist die Standardeinstellung) bis 1 (der Punkt nach dem Erstellen von 1 ist, um zu vermeiden, dass der 404-Fehler "Seite nicht gefunden" auftritt)

  • Auf der Seite möchten Sie die benutzerdefinierten Beiträge anzeigen, die wir zum Ändern der Abfrage benötigen, indem Sie der Standardabfrage unsere Optionen hinzufügen:

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

<?php query_posts($newQuery); ?>

wir haben hier lediglich unsere Optionen hinzugefügt, ohne die Standardabfrage zu ändern.

hoffe hilfreich. Bitte teilen Sie uns mit, falls das bei Ihnen nicht funktioniert hat.

1
wdalhaj