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



お勧め

初期化に関連するアクションのおさらい(2013年11月27日 更新)

いつも何気なくfunctions.phpで使っているafter_setup_themeアクションやinitアクション。普段はあまり意識していなかったが、ふとしたことからどんな順番に呼び出されるのか気になってしまい、ちょっと調べてみた。

WP_List_Tableクラスを使ってみた(2018年5月27日 更新)

WordPressの管理画面ではデータを一覧表示しているページがいくつもある。今回この仕組みを自分のプラグインでも使ってみたいと思い、調査しながらプラグインに組み込んでみた。

投稿ページでユニークなテンプレートを選択しよう(2018年5月27日 更新)

4.7の変更点に「投稿タイプテンプレート」がある。これは従来固定ページ('page')向けに任意のテンプレートを適用できる機能が拡張されたもので、投稿ページ('post')はもちろんカスタム投稿タイプのページにも適用可能になっている。

常時SSL接続に変更しました(2018年5月27日 更新)

先週末、本サイトを常時SSL接続に変更しました。本サイトは「さくらのVPS」(CentOS 6系、Apache 2.2系)上にWordPressのマルチサイト機能を使って構築しており、無償で使用できる「Let's Encrypt」を使って常時SSL接続に切り替えた手順をメモとして残しそうと思います。

テキストエディタの文字を変更する(2018年5月27日 更新)

テキストエディタ(投稿ページの「テキスト」タブのエディタ)に標準では備わっていない機能を追加する自作プラグイン「html entities button」がほぼ1年ぶりにアップデート。ここではバージョン2.0.0で追加したテキストエディタのフォント切り替え機能について紹介する。