WP-PageNavi

Beschreibung

Möchtest du die alten ← Ältere Beiträge | Neuere Beiträge → Links mit ein paar Seitenlinks ersetzen?

Dieses Plugin bietet das Vorlagenschlagwort wp_pagenavi(), das fantastische Seitennummerierungs-Links erzeugt.

Benutzung

In deinem Theme musst du Aufrufe zu next_posts_link() und previous_posts_link() finden und ersetzen.

Im Theme Twentyten sieht es wie folgt aus:

<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">&larr;</span> Older posts', 'twentyten' ) ); ?></div>
<div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">&rarr;</span>', 'twentyten' ) ); ?></div>

Ersetze diese beiden Zeilen mit folgendem:

<?php wp_pagenavi(); ?>

Für mehrteilige Seiten müsstest du nach Quelltext wie diesen suchen:

<?php wp_link_pages( ... ); ?>

und ersetze es mit dies:

<?php wp_pagenavi( array( 'type' => 'multipart' ) ); ?>

Gehe zu WP-Admin -> Einstellungen -> PageNavi für die Konfiguration.

Anpassen des CSS-Quelltextes

Wenn du den CSS-Stil von WP-PageNavi konfigurieren möchtest, kannst du die Datei pagenavi-css.css aus dem Plugin-Verzeichnis in das Verzeichnis deines Themes kopieren und dort Änderungen vornehmen. Auf diese Weise verlierst du deine Änderungen nicht, wenn du das Plugin aktualisierst.

Alternativ kannst du auch die Option „pagenavi.css verwenden“ auf der Einstellungsseite deaktivieren und die Styles direkt zur theme.css-Datei hinzufügen.

CSS-Klassen-Namen ändern

Es gibt Filter, die verwendet werden können, um die Namen von Standardklassen zu ändern, die Seitennavigationselementen zugewiesen sind.

Filter

  • wp_pagenavi_class_pages
  • wp_pagenavi_class_first
  • wp_pagenavi_class_previouspostslink
  • wp_pagenavi_class_extend
  • wp_pagenavi_class_smaller
  • wp_pagenavi_class_page
  • wp_pagenavi_class_current
  • wp_pagenavi_class_larger
  • wp_pagenavi_class_nextpostslink
  • wp_pagenavi_class_last

Benutzung der Filter

// Simple Usage - 1 callback per filter
add_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_previouspostslink_class');
add_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_nextpostslink_class');
add_filter('wp_pagenavi_class_page', 'theme_pagination_page_class');

function theme_pagination_previouspostslink_class($class_name) {
  return 'pagination__control-link pagination__control-link--previous';
}

function theme_pagination_nextpostslink_class($class_name) {
  return 'pagination__control-link pagination__control-link--next';
}

function theme_pagination_page_class($class_name) {
  return 'pagination__current-page';
}


// More Concise Usage - 1 callback for all filters
add_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_class');
add_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_class');
add_filter('wp_pagenavi_class_page', 'theme_pagination_class');

function theme_pagination_class($class_name) {
  switch($class_name) {
    case 'previouspostslink':
      $class_name = 'pagination__control-link pagination__control-link--previous';
      break;
    case 'nextpostslink':
      $class_name = 'pagination__control-link pagination__control-link--next';
      break;
    case 'page':
      $class_name = 'pagination__current'
      break;
  }
  return $class_name;
}

Entwicklung

Danksagungen

Spenden

Ich habe meine Freizeit damit verbracht diese Plugins zu erstellen, zu aktualisieren und zu pflegen. Wenn du meine Plugins wirklich magst und mir ein paar Taler erübrigen möchtest, werde ich es wirklich zu schätzen wissen. Wenn nicht tu dir keinen Zwang an es ohne irgendwelche Verpflichtungen zu verwenden.

Screenshots

  • Mit individuellem Design
  • Admin - Einstellungsseite

FAQ

Aktivierungsfehler: „Parse error: syntax error, unexpected…“

Stelle sicher, dass dein Host PHP5 nutzt. Der einzige narrensichere Weg, dies zu tun ist, diese Zeile zur wp-config.php hinzuzufügen (nach dem Eröffnungstag <?php):

var_dump(PHP_VERSION);

Wenn ich auf Seite 2 gehen möchte, sehe ich den gleichen Inhalt, wie auf Seite 1!

Du benutzt query_posts() falsch. Schaue dir Der richtige Weg query_posts() zu nutzen an.

Funktioniert PageNavi mit sekundären WP_Query-Instanzen?

Ja, lies diese Anleitung

Wie ignoriere ich die Einstellungsseite?

Wenn du ein mehrsprachiges Plugin ausführst, möchtest du wahrscheinlich die Zeichenfolgen auf der Einstellungsseite ignorieren.

Du kannst dies folgendermaßen machen:

<?php wp_pagenavi( array( 'options' => PageNavi_Core::$options->get_defaults() ) ); ?>

Rezensionen

17. August 2023
Simples e totalmente funcional. Resolvendo o problema de paginação com extrema facilidade. Parabéns aos devs.
22. November 2022
I am using this plugin + Divi. It works just fine, but there is a bug with the slugs of the pages and the post types. If you have, for example, a post type with the slug "speakers" and your page is also call "speakers", both slugs will be the same and this is causing the plugin to break. Most people on the internet are looking for this error as the page/2 error. Be sure the slugs does not match and it will work just fine.
24. Juni 2022
Pure code and so simple to customize. The simplest plugin I ever installed. A couple of minutes to get it working. Couldn't be happier 🙂 I only added this snippet to replace my Woocommerce pagination: remove_action('woocommerce_pagination', 'woocommerce_pagination', 10); function woocommerce_pagination() { wp_pagenavi(); } add_action( 'woocommerce_pagination', 'woocommerce_pagination', 10);
9. Mai 2022
Thanks for that plugins I use till long years to add a navigation bar box inside my blog including more than 2000 entries 😉
Alle 146 Rezensionen lesen

Mitwirkende & Entwickler

„WP-PageNavi“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:

Mitwirkende

„WP-PageNavi“ wurde in 53 Sprachen übersetzt. Danke an die Übersetzerinnen und Übersetzer für ihre Mitwirkung.

Übersetze „WP-PageNavi“ in deine Sprache.

Interessiert an der Entwicklung?

Durchstöbere den Code, sieh dir das SVN Repository an oder abonniere das Entwicklungsprotokoll per RSS.

Änderungsprotokoll

2.94.1

  • FIXED: PHP 8.2 warnings

2.94.0

  • NEU: Args.Parameter zu wp_pagenavi Filter hinzugefügt. Dank an @asadowski10
  • NEU: Verbesserte Barrierefreiheit von Nav-Links. Dank an @carlabobak

2.93.4

  • BEHOBEN: Aktualisiertes SCB-Framework zur Unterstützung von PHP 8

2.93.3

  • BEHOBEN: SCB-Framework aktualisiert, um contextual_help zu entfernen

2.93.2

  • NEU: Auf WordPress 5.4 erhöht
  • BEHOBEN: Sichergestellt, dass Action-Links immer ein Array sind.

2.93.1

  • BEHOBEN: Duplizierte Einstellungen gespeichert admin_notices

2.93

  • Das screen_icon wurde aus der SCB entfernt.

2.92

  • Title-Attribut zu Seiten-Links hinzugefügt. Dank an Mahjouba91.

2.91

  • Textoptionen entgegen kses validiert
  • SCB-Framework aktualisiert

2.90

  • po-/ mo-Dateien in dem Plugin entfernt
  • translate.wordpress.org wird nun für Übersetzungen des Plugins genutzt

2.89.1

  • BEHOBEN: before und after Argumente

2.89

  • NEU: wrapper_tag-Option, um andere HTML-Tags abgesehen von DIV zuzulassen und die wrapper_class-Option, um andere class-Namen abgesehen von wp-pagenavi zuzulassen. Dank an Mahjouba91.

2.88

  • NEU: Filter zum Ändern von Klassennamen hinzugefügt. Dank an @bookwyrm

2.87

  • Neu: Native WordPress-uninstall.php-Nutzung

2.86

  • Neu: Kompatibilität mit 4.0
  • NEU: rel=next und rel=previous hinzugefügt

2.85

  • BEHOBEN: „pagenavi-css.css benutzen“ & „Seitennavigation immer anzeigen“ werden nicht in den Einstellungen gespeichert.

2.84

  • BEHOBEN: Das SCB-Framework aktualisiert, um den scbAdminPage Kompatibilitätsfehler zu beheben

2.83

  • ‚echo‘-Parameter hinzugefügt
  • estnische und bengalische Übersetzungen hinzugefügt
  • scbFramework aktualisiert

2.82

  • Fehlerbehebung: Unter einigen Bedingungen erschienen die vorheriger/nächster Links nicht
  • hebräische, georgische und aserbaidschanische Übersetzung hinzugefügt
  • scbFramework aktualisiert

2.81

  • Benötigt einen expliziten Typ; Fehler mit Multipart-Seiten behoben

2.80

  • Unterstützung für mehrteilige Seiten und Benutzerabfragen
  • vorherige/nächste Links vor/nach erste/letzte Links verschoben
  • weitere Informationen

2.74 (2011-02-17)

  • ’smaller‘- und ‚larger‘-Klassen hinzugefügt
  • $query -Argument zu wp_pagenavi() hinzugefügt
  • Übersetzungen aktualisiert
  • weitere Informationen