分割した固定ページのページリンクを表示するWordpressテンプレートタグ。
数字リンクだけではなくテキストリンクにしたり、htmlタグまでパラメータで簡単に設定できます。
結構忘れがちなのですが、固定ページを分割する可能性がある案件には必須ですね。
wp_link_pages() 呼び出しコード
呼び出しコード | 説明 |
---|---|
<?php wp_link_pages(); ?> | 「ページ: 」という前置き文字 + ページ番号 を<p>タグ で囲って出力 |
<?php wp_link_pages($args); ?> | パラメータの指定次第で様々な出力方法が可能 |
wp_link_pages() パラメータ
パラメータ | 初期値 | 設定できる値 | 説明 |
---|---|---|---|
before | <p>ページ | '', HTMLタグ、前置きテキスト 等 | リスト全体の前 |
after | </p> | '', HTML閉タグ 等 | リスト全体の後 |
link_before | '' | 文字列 等 | 各リンク文字の直前 タグ等を含めて囲うものではない |
link_after | '' | 文字列 等 | 各リンク文字の直後 閉じタグ等を含めて囲うものではない |
next_or_number | number | '', number | 数字表記。number 以外は、nextpagelink, previouspagelink が有効になる |
pagelink | % | テキスト等 | next_or_number 用フォーマット% (必須) → %がページ番号に置き換わる 出力結果は link_before ,link_after と同じ |
nextpagelink | 次のページ | 文字列 | next_or_number がnumber 以外の場合 |
previouspagelink | 前のページ | 文字列 | next_or_number がnumber 以外の場合 |
separator | '' | 区切り文字 | 使い方次第でリストタイプにもできます |
echo | 1 | 1(表示)、0(値を返す) | 文字列として取得する場合は 0 |
aria_current | page | page, step, date, location, | スクリーンリーダー用 いずれか1個を指定して現在のページを示す |
wp_link_pages() の使用例
wp_link_pages() は、パラメータ指定に合わせ自動的に成形された状態で出力されます。
実際は1行につながって出力されますが、見やすいように改行とインデントを入れています。
パラメータなし
「ページ: 」という前置き文字 + ページ番号 を<p>タグで囲って出力します。
PHP
<?php wp_link_pages(); ?>
/* 出力結果 */
<p class="post-nav-links">ページ:
<span class="post-page-numbers current" aria-current="page">1</span>
<a href="https://〇〇/〇〇〇/2/" class="post-page-numbers">2</a>
<a href="https://〇〇/〇〇〇/3/" class="post-page-numbers">3</a>
</p>
/* ページ表示 */
ページ: 1 2 3
テキストリンクに変更
「 ページ: 」というテキストは不要なので、それも無くしたシンプル設定。
PHP
<?php wp_link_pages('before=<p class="page-link">&next_or_number='); ?>
/* 出力結果 */
<p class="page-link">
<a href="https://〇〇/〇〇〇/" class="post-page-numbers">前のページ</a>
<a href="https://〇〇/〇〇〇/3/" class="post-page-numbers">次のページ</a>
</p>
/* ページ表示 */
前のページ 次のページ
リストタイプのテキストリンクに変更
セパレータを上手く使うと、簡単にリストタイプにもできます。'next_or_number' => ''
を指定しなければ、数字のリストタイプに^^
PHP
<?php
wp_link_pages(array(
'before' => '<ul class="page-link"><li>',
'after' => '</li></ul>',
'separator' => '</li><li>',
'next_or_number' => ''
));
?>
/* 出力結果 */
<ul class="page-link">
<li><a href="https://〇〇/〇〇〇/" class="post-page-numbers">前のページ</a></li>
<li><a href="https://〇〇/〇〇〇/3/" class="post-page-numbers">次のページ</a></li>
</ul>
/* ページ表示 */
前のページ
次のページ