get_adjacent_post_link

(3.7.0以降)
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

関連

お勧めコンテンツ

Login rebuilderに「XML-RPC設定」を追加しました(2015年12月31日 登録)

公式サイトで公開しているプラグイン「Login rebuilder」をバージョンアップし、XML-RPCリクエストの管理機能を追加しました。Login rebuilderの主たる機能は、ログインページをサイト別にユニークなURLに変更し、ログインページへの不正アクセスを回避することです。WordPressのXML-RPCリクエストはピンバックや外部ツールやサイトなどとの連携に利用されていますが、今回追加した機能ではXML-RPCリクエストの処理に対していくつかの制限できるようにしています。

カスタムフィールド関連関数のおさらい(2012年6月22日 登録)

カスタムフィールドは、投稿記事の拡張情報としてよく利用されている。投稿ページで登録した情報をアーカイブや投稿ページで表示しているが、投稿ページを表示する際にカスタムフィールドの値を更新して、サイドバーのようなページ内要素に利用したりしている。

常時SSL接続に変更しました(2017年3月3日 登録)

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

Blacklist keys manager:プラグイン作ってみました(2013年9月13日 登録)

少し前から明らかにスパムと思われるコメントが投稿され、そのモデレーションメールを受け取る回数が増えてきた。あまりにもあからさまなコメントばかりなので、何らかの対策ができないか考えてみました。

query_posts(WP_Queryクラス)でカテゴリーを絞り込む(2011年9月6日 登録)

久しぶりにquery_posts関数を見直してみると、見知らぬパラメータがいくつか追加されていた。気になったのでカテゴリー関係の指定を'tax_query'パラメータを交えて整理してみた。

最終更新日時 : 2015-05-28 12:56