wp query – Pagination hanya ditampilkan ketika tidak ada kategori yang diatur di wp_query

tldr: Di situs produksi saya saja, ketika saya mengatur category_name ke setiap kategori pagination saya tidak muncul. Setelah saya hapus category_name dari saya wp_query pagination muncul (untuk semua posting di situs saya, tentu saja).

Kode & masalah lengkap

Saya memiliki halaman dan menyetelnya ke templat halaman saya dengan kode berikut:

<div>
  <?php
    $paged = (get_query_var( 'paged' )) ? get_query_var( 'paged' ) : 1;
    $args = array(
      'post_type' => 'post',
      'post_status' => 'publish',  
      'posts_per_page' => 1,
      'paged' => $paged,
      'category_name' => 'videos',
    );
    $my_query = new WP_Query($args);


    if ($my_query->have_posts()):

      while ($my_query->have_posts()):
        $my_query->the_post(); ?>
  
        <article>
          <?php the_title(); ?>
        </article>
      <?php
      endwhile;
    endif; ?>

    <div id="my-pagination">
      <?php 
        echo paginate_links( array(
          'base'         => str_replace( 999999999, '%#%', esc_url( get_pagenum_link( 999999999 ) ) ),
          'total'        => $my_query->max_num_pages,
          'current'      => max( 1, get_query_var( 'paged' ) ),
          'format'       => '?paged=%#%',
          'show_all'     => false,
          'type'         => 'plain',            
          'prev_next'    => true,
          'prev_text'    => sprintf( '<i></i> %1$s', __( 'Newer Posts', 'text-domain' ) ),
          'next_text'    => sprintf( '%1$s <i></i>', __( 'Older Posts', 'text-domain' ) ),
          'add_args'     => false,
          'add_fragment' => '',
        ));
      ?>
    </div>
</div>

1 posting saya muncul seperti yang diharapkan (FWIW saya memiliki 33 posting dalam kategori Video), tetapi paginasi tidak. Jika saya meningkat posts_per_page ke 30 lalu saya melihat 30 postingan Video saya tetapi tidak ada halaman.

Saya menguji ini di lingkungan pengembangan lokal saya dan berfungsi seperti yang diharapkan.

Langkah-langkah debug

Beberapa langkah yang saya ambil untuk men-debug:

  • Mengekspor database produksi saya dan mengimpornya secara lokal ke instalasi baru serta mengimpor semua file saya dari produksi ke lokal dan saya masih tidak melihat masalah ini secara lokal
  • Menurunkan versi WordPress dari 6.1.1 ke 6.0.3
  • Saya mencoba menggunakan wp_reset_query Dan wp_reset_postdata
  • Mencoba menonaktifkan plugin 1 per 1
  • Diuji menggunakan blok Query Loop Gutenberg. Ini menunjukkan masalah yang sama: segera setelah saya menambahkan filter kategori, pagination menghilang

Bertanya

Bagaimana lagi saya bisa men-debug masalah khusus produksi ini?

Leave a Reply

Your email address will not be published. Required fields are marked *