カスタムフィールドを使った関連記事

関連性の高い投稿をグループ化してリスト表示 ~Display Posts Shortcodeとカスタムフィールドを使用

カスタムフィールドを使った関連記事

投稿リストのプラグイン『Display Posts – Easy lists, grids, navigation, and more』(旧称:Display Posts Shortcode)と、カスタムフィールドのメタ値を使って、より関連性の高い投稿をリスト表示(グループ化)する方法です。

Related Posts系プラグインや、テーマ・テンプレートに付属する関連記事の機能を使う方法もありますが、カスタムフィールドを使えば、より精密なグループ化が可能です。

プラグインを嫌う人も少なくないですが、『Display Posts Shortcode』は軽量かつ柔軟性があり、導入して損はありません。

WordPress.org 日本語

Add a listing of content on your website using a simple shor…

カスタムフィールドを使った投稿のグループ化

カスタムフィールドを使った投稿のグループ化(関連付け)の方法は二種類あります。

1) カスタムフィールドの名前に『関連記事のグループ名』、カスタムフィールドの値に『数列』、もしくは分かりやすい『文字列』を設定する。

2) カスタムフィールドの名前に『関連記事の表示を指示する文字列』、カスタムフィールドの値に『関連記事のグループ名』を設定する。

カスタムフィールドの名前に『関連記事のグループ名』を設定

関連する投稿を一つのグループにまとめたい場合。

カスタムフィールドの名前を『story』、値を『数値』にして、投稿の並び順を指定します。

カスタムフィールドに関連記事のグループ名を設定

Display Posts ShortcodeのParametersを参考に、次のように記入します。

orderby=”meta_value_num” は、カスタムフィールドの値の「数列に従う」という意味です。 降順、昇順は、DESCもしくはASCで指定。


[display-posts meta_key="story" orderby="meta_value_num" order="ASC" posts_per_page="4"]

実際の出力。カスタムフィールド値で設定した、1、2、3、4の数列に従って、タイトルが出力されます。

カスタムフィールドの名前は何でもOK。

カスタムフィールドの値は、文字列でも指定できます。

たとえば、カスタムフィールドの名前『story』に属する、カスタムフィールドの値『chapter-1』『chapter-2』『chapter-3』のようにグループ化。

『chapter-1』に属する投稿を、投稿IDに従って、昇順で表示したい場合。


[display-posts meta_key="story" meta_value="chapter-1" orderby="ID" order="ASC" posts_per_page="4"]

上記のような方法で、表示する投稿を絞り込み、より関連性を高めることができます。

投稿のシリーズ化に便利。

カスタムフィールドの名前に『関連記事の表示を指示する文字列』を設定

次の方法は、様々な関連記事のグループを作りたい場合に有効です。

カスタムフィールドの名前に『related』(名前は何でもOK)、カスタムフィールドの値に『関連記事のグループ名(この場合、hayao)』と入力。

カスタムフィールドでグループを指定

Parametersを次のように設定すると、hayaoに属する投稿をランダムにリスト表示することができます。


[display-posts posts_per_page="5" meta_key="related" meta_value="hayao" orderby="rand"]

Parametersは、WordPress関数リファレンスの『WP Query』にあるものなら何でも応用が利きます。

日付で絞り込んだり、特定の投稿をIDで除外したり、細かな設定が可能です。

ショートコードをphpタグとして利用する

ショートコードはphpタグとして使うこともできます。

php echo do_shortcode(‘[ショートコードの文字列]’);

single.phpのthe_contentの続きに下記のように記入すれば、投稿本文の下部に関連記事を自動表示することができます。
サイドバーやフッターなど、どこでも設置可能です。


<?php echo do_shortcode('[display-posts posts_per_page="5" meta_key="related" meta_value="hayao" orderby="rand"]'); ?>

カスタムフィールドを使うメリット

プラグインやテーマ・テンプレートにも関連記事の機能はありますが、「カテゴリー別」「タグ別」など漠然としていますし、複数設定している場合は、あまり関連性のない投稿まで自動表示されることがあります。

カスタムフィールドを使って、投稿をグループ化すれば、いっそう関連性の高い投稿をまとめてリスト表示できるので、訪問者にも分かりやすいでしょう。

WordPress管理画面のプラグイン、Admin Columnsを使えば、カスタムフィールドの値も一目瞭然です。

興味のある方はぜひ。

カスタムフィールドを使った関連記事
更新情報や引用など
>海洋小説『曙光』MORGENROOD

海洋小説『曙光』MORGENROOD

宇宙文明の根幹を支える稀少金属ニムロディウムをめぐる企業と海洋社会の攻防を舞台に描く人間ドラマ。生きる道を見失った潜水艇パイロットと愛を求めるフォルトゥナの娘の恋を通して仕事・人生・社会について問いかける異色の海洋小説です。
Kindle Unlimitedなら読み放題。
Amazonの海洋学ランキングで一位を記録。

CTR IMG