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



お勧め

edit_custom_thumbnail_sizesフィルターを使ってみた(2022年5月30日 更新)

アップロード済みの画像は、トリミングや回転、反転といった編集が可能である。6.0.0で追加されたedit_custom_thumbnail_sizesフィルターは、編集された内容を反映させるサイズを拡張するものだったので、さっそく使ってみた。

WordPressと組み込まれている主なJavaScriptライブラリのバージョン一覧(2018年5月27日 更新)

WordPressの更新が遅れていたサイトを少し前に更新したところ、jQuery UI sortableを使って拡張したページに不具合が発生しました。WordPressの更新に伴って内部のjQuery UIが更新されたことに起因すると思われ、これを機にWordPressとそれに組み込まれたJavaScriptライブラリのバージョンを確認してみました。

投稿日の検索が自由自在に(2015年3月7日 更新)

WordPress 3.7.0ではWP_Date_Queryクラスが追加され、WP_Queryクラス(もちろん query_posts関数でも)で利用できるようになった。このWP_Date_Queryにより、○年○月○日以前や以降の投稿情報を取得したり、○年○月○日から○年○月○日の範囲の投稿情報を取得したりといったことが、容易に行えるようになった。

新テーマ「Twenty Twenty-Three」にはfunctions.phpがない(2022年10月6日 更新)

WordPress 6.1に同梱された新テーマ「Twenty Twenty-Three」を見てみると、そこには見慣れたfunctions.phpがない。Full Site Editing(FSE)対応テーマってこんな感じなのかと思いつつ、テーマの設定がどうなっているのか調べてみた。

WordPressのコーディングスタンダードとPSR-2がかみ合わない(2018年5月27日 更新)

先日パソコンのストレージを換装して開発環境を再構築。エディタのEclipseは「Neon(4.6)」から「Oxygen(4.7)」へ切り替わった。コードを書き始めるとそこはかとなく違和感があり、調べていくとPHPの「Code Style(Formatter)」が「PSR-2」に設定されていることが原因だった。