Seitenweise Blättern in WordPress einbauen
Statt „vorherige" und „nächste" eine richtige Seitenauswahl – ohne Plugin.
Der Schnipsel
global $wp_query;
$seiten = (int) $wp_query->max_num_pages;
// Bei nur einer Seite gibt es nichts zu blaettern.
if ( $seiten > 1 ) {
$aktuell = max( 1, (int) get_query_var( 'paged' ) );
echo '<nav aria-label="Seitenauswahl">';
echo paginate_links( [
'base' => get_pagenum_link( 1 ) . '%_%',
'format' => 'page/%#%/',
'current' => $aktuell,
'total' => $seiten,
'mid_size' => 2,
'type' => 'list',
'prev_text' => 'Zurück',
'next_text' => 'Weiter',
'before_page_number' => '<span class="screen-reader-text">Seite </span>',
] );
echo '</nav>';
}
Was die Angaben bedeuten
- mid_size – wie viele Zahlen links und rechts der aktuellen Seite stehen. Bei 2 sieht man fünf Zahlen plus Anfang und Ende.
- type: list – gibt eine Liste aus statt einer Reihe loser Verweise. Das ist die Form, die Vorleseprogramme ankündigen können („Liste mit 7 Einträgen").
- before_page_number – setzt das Wort „Seite" vor jede Zahl, sichtbar nur für Vorleseprogramme. Ohne das liest ein solches Programm nur „eins, zwei, drei" vor, ohne zu sagen, worum es geht.
Die Klasse screen-reader-text muss im Stylesheet
definiert sein – die meisten Themes bringen sie mit. Fehlt sie,
steht das Wort „Seite" sichtbar vor jeder Zahl.
Wohin der Code gehört
Anders als die meisten Schnipsel gehört dieser nicht in die
functions.php, sondern dorthin, wo die
Blätterung erscheinen soll – also in die Theme-Vorlage
unterhalb der Beitragsschleife, üblicherweise
index.php, archive.php oder
search.php. Bearbeite dafür ein
Child-Theme. Und vorher eine
Sicherung
anlegen.
Passt das nicht auf deinen Fall?
Dieser Artikel beantwortet die Frage allgemein – deine ist vermutlich konkreter. Schreib mir kurz, worum es geht. Ich antworte selbst, meist am selben Tag, und es kostet nichts.
Hat dir das geholfen?
Dann sag es weiter. Eine kurze Bewertung dauert dreißig Sekunden und sorgt dafür, dass die Nächsten diese Antwort überhaupt finden.
Passt dazu
- Schnipsel Beliebte Beiträge anzeigen – ohne Plugin Ein Zähler im Beitragsfeld und eine Abfrage. Mit einer Einschränkung, die man vorher kennen sollte.
- Schnipsel WordPress-Suchfunktion deaktivieren Ein Schnipsel für die Fälle, in denen die eingebaute Suche mehr stört als hilft – ohne die Suche im Verwaltungsbereich mit abzuschalten.
- Schnipsel Mengenfeld auf der WooCommerce-Warenkorbseite ausblenden Vier Zeilen – mit einer Nebenwirkung, die man kennen sollte, bevor man sie einsetzt.
- Schnipsel Produkt-Metadaten in WooCommerce ausblenden Artikelnummer, Kategorien und Schlagwörter von der Produktseite nehmen – für alle Produkte oder gezielt für einzelne.