Paginierung auf benutzerdefinierte Taxonomie

Es fällt mir schwer, das zum Laufen zu bringen. Es ist nicht das erste Mal, dass ich Probleme mit Paginierung habe, oder ich würde sagen, mit WPP-URL-System.

Grundsätzlich habe ich diese URL:

http://example.com/location/dc 

und lädt die taxonomy-location.php Vorlage.

Jetzt füge ich dem Thema die Paginierungsfunktion hinzu. Also ich habe diese URL:

 http://example.com/location/dc/page/2 

und es lädt nicht die Vorlage taxonomy-location.php , es lädt tatsächlich die 404- Vorlage.

Dies zeigt die Debug-Leiste:

http://cl.ly/1u0F470k062o1Q121u15

Es scheint, als ob es die richtigen Werte erhält, WP lädt gerade nicht die richtige Vorlage.


BEARBEITEN (Von den Kommentarlinks verschoben)

functions.php

 /* LOCATION */ add_rewrite_rule( 'location/([^/]+)/page/([0-9]{1,})/?$', 'index.php?location=$matches[1]&paged=$matches[2]', 'top' ); 

taxonomy-location.php

   

"" Venues

<a href="https://wordpress.stackexchange.com/questions/34891/pagination-on-custom-taxonomy/">

<a href="https://wordpress.stackexchange.com/questions/34891/pagination-on-custom-taxonomy/">

No posts found

Solutions Collecting From Web of "Paginierung auf benutzerdefinierte Taxonomie"

'paged' => get_query_var( 'page' ) Ihrer Abfrage 'paged' => get_query_var( 'page' ) .

BEARBEITEN: Damit die Paginierung richtig funktioniert, sollten die Posts pro Seite größer sein als “Blog-Seiten zeigen höchstens” unter Einstellungen-> Lese-Bereich des WordPress-Admins. Es gibt also zwei Möglichkeiten, wie Sie das erreichen können.

  1. Sie können festlegen, dass “Blog-Seiten höchstens anzeigen” auf “1” gesetzt werden. Dies würde 1 Post in allen Blog-Seiten anzeigen, sofern Sie nicht speziell für jede Abfrage post_per_pages angeben.
  2. Die andere Option, die Sie haben, wäre, den pre_get_posts Filter zu verwenden.

Beispiel für pre_get_post-Filter zur Begrenzung der Nr. von Posts auf einer Lokalisierungs-Taxonomie-Archivseite auf 2 Posts pro Seite.

 function location_posts( $query ) { if( is_tax( 'location' ) ) { $query->set('posts_per_page', '2'); } return $query; } add_filter('pre_get_posts', 'location_posts'); 
 register_post_type( 'lifestyle', array( 'label' => __('Lifestyle', 'tmi'), 'public' => true, 'show_ui' => true, 'show_in_nav_menus' => true, 'rewrite' => true, 'hierarchical' => true, 'menu_position' => 5, 'exclude_from_search' =>false, 'supports' => array( 'title', 'editor', 'thumbnail', 'excerpt', 'revisions') ) ); register_taxonomy('lifestylecat', __('lifestyle', 'tmi'),array('hierarchical' => true, 'label' => __('Categories', 'tmi'), 'singular_name' => __('Category', 'tmi')) );