WordPress:シングルページで前後の記事の有無を判定して条件分岐する。

カテゴリー:
WordPress
タグ:

単体記事のページで、次の記事、前の記事へのリンクを表示させることはよくあると思います。
表示させる方法を三つできてしまったので、せっかくなのでメモとして残しておきます。

たぶん一番基本的な書き方

これが一番簡単そう。

前後の記事の有無を調べて条件分岐する

get_next_post()とget_previous_post()は前後に記事があるかどうか判定するテンプレートタグです。もしリンクが無ければ何も出力しません。next_post_link()とprevious_post_link()の外に出したpタグも判定結果によって出力する、しないが変化します。パラメータにhtmlタグを記述しなくてもよいのですっきりして好ましいです。でも、ちょっとコードが長いなー。

まとめてみました

少しだけ短くなりました(^^;)。

以上、三つほどご紹介しましたが、自分の環境でテストした限りは全て同じ出力結果になりました。
ポイントとしては、出力するリンクにCSSで装飾するためのタグやクラスをどのようにして生成するか、前後に記事が無い場合にタグごと出力する、しないをコントロールすることができる、というところです。

おまけ:パラメータを見てみる

next_post_link()とprevious_post_link()のパラメータは、formatlinkin_same_catexcluded_categoriesとなってます。
実際に使用したコードは→
next_post_link(‘次の記事:%link’,’%title’,TRUE)
って感じです。

formatは文字列。前の記事:%link、次の記事:%link、と入れて次のパラメータで出力される文字列とくっつけました。

linkは一つ前のパラメータ、%linkに出力される内容を設定します。%titleがデフォルトで、記事のタイトルが表示されます。ここに前の記事、次の記事などの文字列も入れることができます。

in_same_catはFALSEがデフォルト。TRUEと入力すれば同じカテゴリーの記事でリンクが生成されます。

excluded_categoriesは表示させたくない記事のカテゴリーIDの番号だそうです。自分は使いませんでした。

参考:テンプレートタグ/next post link – WordPress Codex 日本語版
WordPressで前後記事が存在する場合のみリンク表示 – それからそれから
WordPressのシングルページで前後の投稿リンクを条件判定で出力するやり方 | bl6.jp

ありがとうございました!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメント

Paxforex отзывы

2017/11/1723:23 | StephenKam

сайта знакомств

2017/11/2415:35 | JefferyRog

срочная доставка грузов из санкт петербурга

офисный переезд спб

2017/12/0319:08 | Manualrah

шиншилла

ввделка шкур секс

2017/12/0319:59 | Jordanevefe

дизельные насосные установки

сафоновский завод энергетического машиностроения официальный сайт

2017/12/0420:04 | BruceJeari

нагрузочные модули что это

резистивный нагрузочный модуль

2017/12/0420:05 | Bobbyarcax