Paginierung wird nur auf die erste Seite aufgelöst


7

Meine Paginierung verlinkt nur auf dieselben Beiträge, die sich auf meiner Startseite befinden.

Ich habe 3 Beiträge auf meiner Startseite. Wenn ich auf "Weiter" drücke, wird "Seite / 2" angezeigt, es werden jedoch nur die gleichen 3 Beiträge ohne vorherige Schaltfläche angezeigt. Die nächste Schaltfläche ist noch vorhanden, geht aber immer noch zu Seite / 1

Hier ist die vollständige Abfrage.

<?php

            query_posts('post_type=post&posts_per_page=3');

            if ( have_posts() ) : while ( have_posts() ) : the_post();

            $category = choose_one_category(get_the_category());

            switch ($category){
                case "Festival News":
                    $left[] = $post;
                    break;
                case "Industry News":
                    $centre[] = $post;
                    break;
                case "Other":
                    $right[] = $post;
                    break;
            }


            endwhile; 
            ?>
            <div class="custom-pagination">

            <div ><?php previous_posts_link('&laquo; Previous') ?></div>

            <div ><?php next_posts_link('Next &raquo;') ?></div>
            </div>
            <?php endif;



            ?>

Antworten:


11

Aufbauend auf dem, was Rarst gesagt hat, bin ich mir ziemlich sicher, dass die Abfragezeichenfolge "ausgelagerte" Abfragen beibehält, auch wenn WP_Querysie als irrelevant entfernt wird. Sie können versuchen, Ihre Abfragepostzeile durch folgende zu ersetzen:

global $query_string;
parse_str( $query_string, $my_query_array );
$paged = ( isset( $my_query_array['paged'] ) && !empty( $my_query_array['paged'] ) ) ? $my_query_array['paged'] : 1;
query_posts('post_type=post&posts_per_page=3&paged='.$paged);

1
JA!! Gibt es eine Chance, dass Sie erklären können, was passiert? Damit ich und andere es verstehen können? Vielen Dank
— Mild Fuzz

Kann ich dies beispielsweise mit benutzerdefinierten WP_Query-Objekten verwenden? Ich habe einige, die auch nicht funktionieren.
— Mild Fuzz

1

Paginierungsfunktionen sollen mit der Hauptschleife verwendet werden. Sie stützen sich auf globale Variablen $pagedund $wp_querywerden nicht von Ihrer benutzerdefinierten Schleife festgelegt.


Wie kann ich das korrigieren?
— Mild Fuzz

Wenn dies der Hauptinhalt / die Hauptschleife Ihrer Seite ist, müssen Sie damit arbeiten query_posts(). Andernfalls müssen Sie möglicherweise Ihre eigene Paginierung codieren. Zumindest weiß ich nicht, wie native Paginierungsfunktionen mit der Sekundärschleife funktionieren sollen.
— Rarst

Ich habe die obige Schleife geändert. Ich bekomme einen nächsten Button, aber die Beiträge sind die von der Titelseite.
— Mild Fuzz

Warum sollten sie nicht sein? Sie geben in der Abfrage nichts anderes als Posttyp und -menge an. Siehe auch
— Beibehalten der

1

Wenn Sie auf dieses Problem stoßen , versuchen Sie Folgendes: " Easy Pagination Deamon ". Installieren, aktivieren, verwenden Sie das Vorlagen-Tag in Ihrer Vorlage ...

Der Link zum Stylesheet befindet sich in meinem Inhalt oder unter dem oberen Plugin-Kommentar.


0

Ist das auf deiner Homepage? Ich hatte auch dieses Problem und als Problemumgehung habe ich einfach den Link auf der ersten Seite auf http://www.yoursite.com/category/page/2/ verweisen lassen, sodass der erste Wertesatz für Seite eins übersprungen wird. Von da an funktionierten die Paginierungslinks korrekt. Hier ist ein Beispiel .


nur ein bisschen hacky
— Mild Fuzz

vereinbart, aber in Bezug auf die Zeit kann es ein Lebensretter sein. Letzten Monat musste ich in 2 Wochen 14 WP-Sites erstellen und musste leider aus Zeitgründen auf Hacks zurückgreifen.
— Moettinger
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.