##教えていただきたいこと
WordPressのtag.phpでページネーションを実装したのですが、
URLに「/page/2/」がつくと404エラーとなってしまいます。
★URL
http://localhost/test/tag/タグ名/ ★こちらは問題無し
http://localhost/test/tag/タグ名/page/2/ ★404エラーとなる
パーマリンクは「http://localhost/test/%category%/%post_id%/」としております。
また、ページネーションは、paginate_link関数を使用しております。
404エラーを解決する方法があればご教授いただきたく
よろしくお願いいたします。
##tag.phpソースコード
<?php /* Template Name: タグ一覧テンプレート */ $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $tag = get_queried_object(); $slugName = $tag->slug; $arrayPostType = get_post_types(array('public' => true, '_builtin' => false)); $the_query = new WP_Query([ 'post_type' => $arrayPostType, 'post_status' => 'publish', 'paged' => $paged, 'posts_per_page' => 10, 'tag' => $slugName, 'orderby' => 'date', 'order' => 'DESC', 'meta_query' => [ [ 'key' => 'list_invisible', 'compare' => 'NOT EXISTS', ], [ 'key' => 'list_invisible', 'compare' => '!=', 'value' => '1', ], 'relation' => 'OR', ], ]); ?> <?php get_header(); ?> <article class="article"> <div class="section"> <div class="inner"> <div class="section__body"> <?php if ($the_query->have_posts()) : ?> <ul class="article-list"> <?php while ($the_query->have_posts()) : $the_query->the_post(); ?> <li class="article-list__item"> <div> <a href="<?php the_permalink(); ?>"> <figure><img src="<?php echo esc_url(CFS()->get('eyecatch_image')); ?>" class="eye-catching-image"></figure> <div> <p class="date"><time datetime="<?php the_time('Y.m.d'); ?>"><?php the_time('Y.m.d'); ?></time></p> <p class="article-title"><?php the_title(); ?></p> </div> </a> </div> </li> <?php endwhile; ?> </ul> <?php endif; wp_reset_postdata(); ?> </div> </div> </div> <?php if ($the_query->max_num_pages > 1) : ?> <nav class="pagination"> <?php echo paginate_links(array( 'base' => get_pagenum_link(1) . '%_%', 'format' => 'page/%#%/', 'current' => max(1, $paged), 'mid_size' => 1, 'total' => $the_query->max_num_pages, 'type' => 'list', 'prev_text' => '<', 'next_text' => '>' )); ?> </nav> <?php endif; ?> </article> <?php get_footer(); ?>
あなたの回答
tips
プレビュー