paginate_links

説明

mixed paginate_links( [ mixed $args = '' ] )
(アーカイブページ向けの)ページネートリンクを取得する。

パラメータ

  • $args
    ページネートリンクのパラメータを連想配列または文字列で指定する(省略時は、'')。
    キー名意味デフォルト値
    baseベースURL('%_%'がページネート部分に置き換わる)'%_%'
    formatページネート部の書式('%#%'がページ番号に置き換わる)'?page=%#%'
    total最大ページ数(2以上)1
    current現在のページ番号0
    show_all全件表示false
    prev_next「前へ」「次へ」のリンクの有無true
    prev_text「前へ」のテキスト__('« Previous')
    next_text「次へ」のテキスト__('Next »')
    end_size最終ページ部の表示件数(1以上)1
    mid_size現在のページ部の表示件数(0以上)2
    type出力形式('array'、'list'、その他)'plain'
    add_argsURLに追加するパラメータを連想配列で指定false
    add_fragmentadd_argsパラメータ指定分の後に追加するパラメータ''
    before_page_number[3.9.0]各ページ番号の前に追加するテキスト''
    after_page_number[3.9.0]各ページ番号の後ろに追加するテキスト''
    aria_current[4.9.0]現在のページを示すspan要素のaria_current属性値'page'

返り値

'type'が'array'の場合は、各ページネートリンクを格納した配列を返す。'type'が'list'の場合は、UL、LIタグで囲まれたページネートリンクの文字列を返す。'type'が'array'および'list'以外の場合は、単純にページネートリンクが連結した文字列を返す。

注意

ベースURL、ページ部について自由に設定できる汎用的な関数で、アーカイブページはもちろん検索結果ページでも応用できる(むしろこちらが本命かも)。
'show_all'はデフォルトfalseで、ページ数が多い場合は途中が「…」になる(ドット表示)。'show_all'がtrueの場合にはドット表示されない。

使用例

  • ベースURLが'http://localhost/category/news'で、ページ数を10、現在のページを5としてリンクを取得する。
    <?php $link = paginate_links( array( 'base'=>'http://localhost/category/news', 'total'=>10, 'current'=>5 ) ); ?>
  • ベースURLが'http://localhost/category/news'で、ページ部を'/page/%#%'、ページ数を10、現在のページを5として、UL、LIタグ付きで取得する。
    <?php $link = paginate_links( array( 'base'=>'http://localhost/category/news', 'format'=>'/page/%#%', 'total'=>10, 'current'=>5, 'type'=>'list' ) ); ?>

フィルター

リンク先URLの生成時、'paginate_links'フィルターが呼び出される。パラメータ$linkにはリンク先URLが格納される。
esc_url( apply_filters( 'paginate_links', $link ) )

アクション

実行するアクションはありません。

ソースファイル

/wp-includes/general-template.php

最終更新 : 2017年11月17日 09:07



お勧め

6.2に追加されるsearch_columnsパラメータが便利(2023年3月30日 更新)

バージョン6.2では記事検索機能を備えたWP_Queryクラスにsearch_columnsパラメータが追加される。標準のキーワード検索では、タイトル(post_title)、本文(post_content)、抜粋(post_excerpt)が対象になっているが、search_columnsパラメータを使うと対象を絞り込めるようになる。

固定ページのURLの拡張子をhtmlに変更する(2013年3月9日 更新)

固定ページについて、URLを静的ページっぽく拡張子htmlに変更したいという要望を受けることがある。これまでは「.html on PAGES」というプラグインを使っていて特に不満があったわけではないのだが、今回ひょんなことから簡単に対応できることがわかったので、メモ書きしておく。

KUSANAGIでマルチサイト(サブドメイン)を試した(2019年8月6日 更新)

本サイトはサブディレクトリタイプのマルチサイト機能を採用して構築しているが、これまでサブドメインタイプは利用した経験はない。マルチサイト機能のサブドメインタイプは以前から1度は試してみたいと思っており、今回実際にサイトを構築してみた。

Fotepo:プラグイン作ってみました(2019年9月19日 更新)

仕事柄、Chromeの「デベロッパーツール」を使ってページのフォントを変更することがある。そんな時、無効なフォント名を指定してしまったり、フォント名をまちがえることがあり、もう少しお手軽にできないかと思って作ったのが今回紹介するプラグイン「Fotepo」である。

カテゴリー専用の投稿一覧と新規投稿メニューを追加する(2012年1月23日 更新)

サイト更新の1クリックを省くため、特定カテゴリーの投稿に対して同じようにメニューを追加してみた。カスタム投稿タイプの専用投稿メニューみたいな感じである。