get_adjacent_post_link

説明

string get_adjacent_post_link( string $format, string $link [ , bool $in_same_cat$in_same_term = false [ , mixed $excluded_categories$excluded_terms = '' [ , bool $previous = true [ , string $taxonomy = 'category' ] ] ] ] )
直前または直後の投稿ページのリンクを取得する。

パラメータ

  • $format
    フォーマットを指定。
  • $link
    リンクタイトルを指定。
  • $in_same_cat$in_same_term
    同じターム([3.8.0]より前のバージョンはカテゴリー、[3.8.0]以降のバージョンは$taxonomyで指定されたタクソノミー)内の投稿ページに限定する場合はtrue、限定しない場合はfalseを指定。省略時はfalseが適用される。
  • $excluded_categories$excluded_terms
    除外するターム([3.8.0]より前のバージョンはカテゴリー、[3.8.0]以降のバージョンは$taxonomyで指定されたタクソノミー)を指定する場合は、そのタームIDを文字列または配列で指定。
  • $previous
    直前の投稿ページの場合はtrueを、直後の場合はfalseを指定(省略時はtrue)。
  • $taxonomy
    [3.8.0]$in_same_termがtrueの場合に同一判定するタクソノミー名を指定(省略時は'category')。

返り値

パラメータ$previousで示した投稿ページのリンク(aタグ)を返す。

注意

next_post_link関数で出力されるリンクを取得する。
・パラメータ$formatは、'%link'を含まなければならない。
・パラメータ$linkは、投稿タイトルの'%title'、投稿日の'%date'を含めることができる。

使用例

  • 直前の投稿ページのリンクを取得する。
    <?php $url = get_adjacent_post_link( '[%link]', '前の記事へ' ); ?>
  • 同カテゴリー内の直前の投稿ページのリンクを取得する。
    <?php $url = get_adjacent_post_link( '[%link]', '前の記事へ', true ); ?>
  • カテゴリーIDが1のカテゴリーを除外して直前の投稿ページのリンクを取得する。
    <?php $url = get_adjacent_post_link( '[%link]', '前の記事へ', false, '1' ); ?>
  • カテゴリーIDが1のカテゴリーを除外して直後の投稿ページのリンクを取得する。
    <?php $url = get_adjacent_post_link( '%link &raquo;', '%title', false, '1', false ); ?>
  • 同タグ内の直前の投稿ページのリンクを取得する。
    <?php $url = get_adjacent_post_link( '[%link]', '前の記事へ', true, '', 'post_tag' ); ?>

フィルター

リンクテキストのタイトルを決定する前に'the_title'フィルターを呼び出す。$titleには投稿情報のタイトルが、$post_idには投稿情報IDが格納される。
$title = apply_filters( 'the_title', $title, $post_id );
パラメータ$previousがtrueの場合、リンクテキストを返す前に'previous_post_link'フィルターを呼び出す。$outputにはリンクテキストが、$format$linkはそれぞれパラメータの内容が、$postには投稿情報が、$adjacent(4.2.0で追加)には'previous'が格納される。
return apply_filters( 'previous_post_link', $output, $format, $link, $post, $adjacent );
パラメータ$previousがfalseの場合、リンクテキストを返す前に'next_post_link'フィルターを呼び出す。$outputにはリンクテキストが、$format$linkはそれぞれパラメータの内容が、$postには投稿情報が、$adjacent(4.2.0で追加)には'next'が格納される。
return apply_filters( 'next_post_link', $output, $format, $link, $post, $adjacent );

アクション

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

ソースファイル

/wp-includes/link-template.php

最終更新 : 2015年05月28日 12:56



お勧め

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

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

子カテゴリのアーカイブページを親カテゴリ用のテンプレートファイルで表示しよう(2011年12月8日 更新)

少し前に投稿した「適切なテンプレートファイルを用意してテンプレート内の振り分け処理を無くす」で説明した通り、特定のカテゴリ専用のテンプレートとしてcategory-○○.phpを用意することで、category.phpやarchive.php内で振り分けを行う必要がなくなる。ただ、すべてのカテゴリ分を用意するのは効率的ではないし、特に子カテゴリについては親カテゴリと共通内容になるケースが多いのではないだろうか。ここでは、子カテゴリの個別テンプレートファイルを作らず、親カテゴリのテンプレートを利用する方法を紹介する。

固定ページを投稿ページ用テンプレートファイル(single.php)で表示する(2013年7月31日 更新)

固定ページと投稿ページのデザインが共通の場合、同じ内容のsingle.phpとpage.phpを用意すれば事足りるが、デザインの修正時は二度手間になってしまう。そこで、固定ページをsingle.phpで表示するようにできないか考えてみた。

HTML entities button:プラグイン作ってみました(2017年12月17日 更新)

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

Login rebuilder 2.4.0の新機能を紹介(2018年5月27日 更新)

昨日、約半年ぶりにLogin rebuilderをアップデートし、著者ページ(author page)の閲覧を制限できる機能を追加した。この機能は、著者ページの閲覧によってユーザーIDが類推されることを防ぐことが目的としている。