webentwicklung-frage-antwort-db.com.de

Paginierung ergibt 404 Fehler

Es scheint, dass dieser Fehler von WP nie von WP Team behoben wurde.

Ich habe einen benutzerdefinierten Post-Typ, meine URL-Struktur ist /% category% /% postname%/Und wenn ich auf die 2. Seite klicke, erhalte ich den Fehler 404.

Ich habe alles ausprobiert, was ich im Internet gefunden habe, Plugins, Codes. Ich habe sogar meine Paginierungs-Basis-URL so geändert, dass sie NICHT Seite ist. Aber immer noch nichts.

Und ja, ich habe den Prozess des erneuten Speicherns von Permalinks durchgeführt. Ich habe versucht, die Wiederherstellung auf Deafault zurückzusetzen und dann zurückzukehren. Immer noch nichts. Heruntergeladenes wp_navi immer noch dasselbe.

Kann ich irgendetwas tun, um das zu lösen?

2
Tommixoft

Hast du das versucht?

Ich hatte das gleiche Problem schon einmal. Ich habe diese Schritte ausgeführt und es funktioniert für mich.

Ich benutze diesen Code in meiner functions.php

// New method of WordPress Query since 3.4.1
if ( ! function_exists( 'ucc_add_cpts_to_pre_get_posts' ) ) {
    function ucc_add_cpts_to_pre_get_posts( $query ) {
    if ( $query->is_main_query() && ! is_post_type_archive() && ! is_archive() && ! is_search() && ! is_singular() && ! is_404() ) {
        $my_post_type = get_query_var( 'post_type' );
        if ( empty( $my_post_type ) ) {
            $query->set('post_type', 'your_post_type_name'); // replace your_post_type_name with yours
        }
    }
}
}add_action( 'pre_get_posts', 'ucc_add_cpts_to_pre_get_posts' );

Dann benutze ich dies in meiner single- {post-type} .php

<?php $paged = 1;
  if ( get_query_var('paged') ) $paged = get_query_var('paged');
  if ( get_query_var('page') ) $paged = get_query_var('page'); 
  if (have_posts()): 
?>


<?php $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
  $loop = new WP_Query( array(
    'post_type' => 'your_post_type_name', // replace your_post_type_name with yours
    'posts_per_page' => PER_PAGE_DEFAULT, // Displaying number posts per page equals to Reading Settings in WP admin
    'paged'=>$paged
  )); 
?>

<?php query_posts( '&post_type=your_post_type_name&paged=' . $paged );  ?>
<?php while ( $loop->have_posts() ) : $loop->the_post(); ?>

  <!-- The content is here -->

<?php endwhile; else: ?>
  <p>Not Found</p>
<?php endif; wp_reset_query(); ?>

<div class="navigation">
 <?php if(function_exists('wp_page_numbers')) { wp_page_numbers(); } ?> 
</div>

In meinem Fall verwende ich das wp-Seitenzahlen-Plugin.

Hoffentlich kann es Ihr Problem lösen.

2
Kharis Blank