前提・実現したいこと
Wordpressでカスタム投稿記事のターム一覧で
ページネーションを動作させたい
発生している問題
ページネーションをクリックしても1ページ目の内容から遷移しない
該当のソースコード
taxonomy-aaa_term.php
<ul class="page__news--list foo" data-delighter> <?php global $post; $term = array_shift(get_the_terms($post->ID, 'classmaterial_cat')); $args = array( 'post_type' => 'cat', //カスタム投稿タイプ名 'taxonomy' => 'aaa_term', //タクソノミー名 'term' => $term->slug, //ターム名 ); ?> <?php $myPosts = get_posts($args); if($myPosts) : ?> <?php foreach($myPosts as $post) : setup_postdata($post); ?> <li class="page__news--list--text" href="<?php the_permalink(); ?>"> <a class="txt-box" href="<?php the_permalink(); ?>"> <div class="txt-box"> <time><?php the_time('Y/m/d'); ?></time> <h2 style="text-align:left;"><?php echo mb_substr( $post->post_title, 0, 16) . '...'; ?></h2> <span class="classmaterial-cat_style"><?php if ($terms = get_the_terms($post->ID, 'aaa_term')) { foreach ( $terms as $term ) { echo esc_html($term->name); } } ?></span> </div> </a> </li> <?php endforeach; ?> <?php else : ?> 省略 //ページネーション <?php if( function_exists("the_pagination") ) the_pagination(); ?>
function.php
function.php
1function the_pagination() { 2 global $wp_query,$paged; 3 $bignum = 999999999; 4 if ( $wp_query->max_num_pages <= 1 ) 5 return; 6 echo '<nav class="pagination">'; 7 echo paginate_links( array( 8 'base' => str_replace( $bignum, '%#%', esc_url( get_pagenum_link($bignum) ) ), 9 'format' => '', 10 'current' => max( 1, get_query_var('paged') ), 11 'total' => $wp_query->max_num_pages, 12 'prev_text' => '←', 13 'next_text' => '→', 14 'type' => 'list', 15 'end_size' => 3, 16 'mid_size' => 3 17 ) ); 18 echo '</nav>'; 19}
試したこと
urlは問題なく、404エラーにならないので
記事取得の際に今いるページを判定する処理があれば動作すると思うが、
どうしたらいいかわからない
あなたの回答
tips
プレビュー