こんにちは、デザイナーの野田沢です。
前回よりだいぶ時間が空いてしまいましたが、初心者のためのWORDPRESS #8です。
今回はページングの設置についてご紹介したいと思います。ページングが設定されていないとページの読み込みが遅くなり非常によくないです。
またこのページング設置が個人的には少し苦労したので、うまくお伝えできればと思います。
今回お伝えする設定方法は、投稿ページと固定ページではページングの設定が異なるので、分けてお伝えします。
固定ページでのページング設定
まずは固定ページでの設定です。下記のコードをコピペで設置完了です。
この固定ページでのページング設定がなにげ苦労しました。
色々試した結果、下記のコードが一番調子が良いです!
<?php if ($the_query->max_num_pages > 1) { echo paginate_links(array( 'base' => get_pagenum_link(1) . '%_%', 'format' => '/page/%#%/', 'current' => max(1, $paged), 'total' => $the_query->max_num_pages )); } wp_reset_postdata(); ?>
私の場合はこのコードをdivで内包しデザインをcssで調整しています。
urlは/page/ページ番号/となります。シンプルでステキです。
htmlコードは、現在のページがsapnタグ、遷移ページがaタグのみですので調整も簡単です。
こちらのコードを参考にさせて頂きました。
投稿用ページでのページング
次は投稿ページでのページング設定です。
category.phpやarchive.phpなどでお使いください。
<?php global $wp_rewrite; $paginate_base = get_pagenum_link(1); if(strpos($paginate_base, '?') || ! $wp_rewrite->using_permalinks()){ $paginate_format = ''; $paginate_base = add_query_arg('paged','%#%'); } else{ $paginate_format = (substr($paginate_base,-1,1) == '/' ? '' : '/') . user_trailingslashit('page/%#%/','paged');; $paginate_base .= '%_%'; } echo paginate_links(array( 'base' => $paginate_base, 'format' => $paginate_format, 'total' => $wp_query->max_num_pages, 'current' => ($paged ? $paged : 1), 'prev_text' => '« 前へ', 'next_text' => '次へ »', )); ?>
こちらも色々と設定方法がありますが、私はこれが非常に使いやすかったです。
こちらのコード を参考にさせて頂きました。
おまけ
詳細ページでページングも参考までにご紹介します。
詳細ページの場合は「次の記事」「前の記事」へ遷移できるシンプルなものです。
こちらも設定されているのが一般的ですよね。
<?php previous_post_link('« %link', '%title', false); ?> <?php next_post_link('%link »', '%title', false); ?>
私の場合は dl を使用して組み込んでいます。
また、末尾の設定を変更することで、記事全体移動とカテゴリー内のみの移動を区別できるようです。
TRUE … カテゴリ内の移動
FALSE … 全体の移動
こちらのコードを参考にさせて頂きました。
今回の記事が何かのお役立てたら幸いです。
それではまた次回。
過去記事
▸ 初心者のためのWORDPRESS -07-
▸ 初心者のためのWORDPRESS -06-
▸ 初心者のためのWORDPRESS -05-
▸ 初心者のためのWORDPRESS -04-
▸ 初心者のためのWORDPRESS -03-
▸ 初心者のためのWORDPRESS -02-
▸ 初心者のためのWORDPRESS -01-