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



お勧め

Emojin:プラグイン作ってみました(2015年3月21日 更新)

ちょっと前のTLでiOSの絵文字を含んだ投稿を保存すると、絵文字以降の文章がすべて消えた状態で保存されるといったツイートを見かけた。少し検索してみると、MySQLのデータベースの文字セットが「utf8」の場合、iOSの絵文字のような4バイトの文字を正常に保存できず、それ以降の文章も保存されないというものらしい。対処方法としてデータベースの文字セットを「utf8mb4」に変更するのが有効らしいのだが、他に回避策がないか考えてみた。

Twenty Seventeenのフォントサイズを変更してみた(2021年12月15日 更新)

先日投稿した「続テーマを変更せずにWebフォントを使ってみた」では、テーマ「Twenty Seventeen」でもWebフォントを使えるようにした。その際、「Twenty Seventeen」のフォントサイズが少し小さく感じたので、今回はフォントサイズを調整してみた。

HTML entities button:プラグイン作ってみました(2021年4月28日 更新)

以前投稿した「HTML編集モードに定型文ボタンを追加する」をアレンジして、HTML編集モードに特殊文字(HTMLエンティティ)を挿入できるボタン、顔文字を挿入できるボタン、過去の投稿ページのリンクを挿入できるボタンを追加するプラグインを作ってみました。HTML編集モードの作業効率を向上させるプラグインです。2.1.0では「Dashiconsの挿入」を追加しました。HTML編集モードをメインに使用されている方は、お試しあれ。

5.7の機能拡張:エクスポートファイルに更新日時が追加ほか(2021年2月23日 更新)

WordPressはサイト移行を支援する機能として投稿情報のエクスポート機能を備えている。5.7ではこのエクスポート機能が改良され、更新日時情報が追加されるようだ。

query_posts(WP_Queryクラス)でカスタムフィールドを使う(2011年9月15日 更新)

先週3回にわたってtax_queryパラメータを使ったカテゴリーや投稿タグ、投稿フォーマットの絞り込みを整理したが、その途中で目に付いたのが'meta_query'パラメータ。この'meta_query'パラメータは、カスタムフィールドの絞り込み条件を指定するためのもので、3.2で登場した新しいパラメータのようだ。