newsというタイプのカスタム投稿を作成し、アーカイブページ、記事ページ共に正常に表示されています。
今後記事の数が増えてきたときのために、こちらやこちらを参考にして以下の通りページングを作成しました。
php
1/** 2* function.php 3*/ 4 $paged = get_query_var('paged') ? get_query_var('paged') : 1 ; 5 $args = array( 6 'post_type' => 'news', 7 'posts_per_page' => 10, 8 'paged' => $paged 9 ); 10 $the_query = new WP_Query($args);
php
1/** 2* archive-news.php 3*/ 4<ul class="list"> 5 <?php 6 global $wp_query; 7 $list = new WP_Query("post_type=news&paged=$paged"); 8 $max_num_pages = $list->max_num_pages; 9 $big = 999999999; 10 echo paginate_links( array( 11 'base' => str_replace( $big, '%#%', esc_url( get_pagenum_link( $big ) ) ), 12 'format' => '?paged=%#%', 13 'current' => max( 1, get_query_var('paged') ), 14 'total' => $max_num_pages 15 ) ); 16 ?> 17 </ul>
こちらで出力されたのが以下のhtmlです。
html
1<ul class="list"> 2 <span aria-current="page" class="page-numbers current">1</span> 3 <a class="page-numbers" href="https://〜〜/news/page/2/">2</a> 4 <a class="page-numbers" href="https://〜〜/news/page/3/">3</a> 5 <a class="next page-numbers" href="https://〜〜/news/page/2/">次へ »</a> 6</ul>
正常に表示はされているのですが、例えば全ページが6ページ以上あるときは最後のページへのジャンプを表示させたり、「前へ」「次へ」の表示を変更させたりしたいときはどこを編集する必要があるのかわからず手詰まり状態です…
$bigを始めそれぞれの関数の意味も理解できていません。
お知恵を貸してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/18 05:53
2020/03/18 12:49
2020/03/19 01:59
2020/03/19 02:22
2020/03/19 02:39
2020/03/19 02:55
2020/03/23 02:07