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;



            ?>
Milder Flaum
quelle

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);
John P Bloch
quelle
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.

Selten
quelle
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.

Kaiser
quelle
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 .

Moettinger
quelle
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