WordPressで関連記事を表示するコード
関連記事とは
関連記事とは、ある記事の内容に関連するテーマや情報を持つ別の記事のことです。多くの場合、ウェブサイトやブログ、ニュースサイトなどで、読者がさらに興味を持ちそうな記事を見つけられるように、元となる記事の終わりやサイドバーに表示されます。
なぜ関連記事が表示されるのか?
- ユーザー体験の向上: 読者が探している情報や興味のあるテーマに、より深くアクセスできるようにするためです。
- サイト内の回遊率アップ: 関連記事を読んでもらうことで、ユーザーがサイトに滞在する時間が長くなり、他のページも見てくれる可能性が高まります。
- SEO対策: 関連性の高い記事同士をリンクでつなげることで、検索エンジンがサイト全体の構造や各記事の重要性を正しく理解しやすくなります。
例えば、ラーメンの食べ歩きについての記事を読んだ後、「東京の人気ラーメン店10選」や「美味しいラーメンの作り方」といった記事が関連記事として表示されることがあります。これにより、読者は同じジャンルの記事を続けて読むことができるため、満足度が高まります。
関連記事を表示するコード
WordPressで関連記事を表示するには、主に以下の2つの方法があります。
1. プラグインを利用する
これが最も簡単で、初心者にもおすすめです。多くのプラグインが無料で提供されており、設定も簡単です。
代表的なプラグイン
- Yet Another Related Posts Plugin (YARPP): 非常に人気があり、タグ、カテゴリー、キーワードなどに基づいて柔軟に関連記事を抽出できます。
- Contextual Related Posts: 記事の内容やタイトル、タグなどから関連性の高い記事を自動で表示します。
- Jetpack: WordPressの公式プラグインで、関連記事表示機能も含まれています。
2. コードを直接テーマファイルに記述する
自分でコードを記述すれば、より細かくカスタマイズできますが、PHPやWordPressのテンプレートタグに関する知識が必要です。 以下に、カテゴリーが同じ関連記事を表示する基本的なスクリプトの例を示します。
スクリプトの例
このコードは、single.php
やcontent-single.php
など、記事の個別ページを表示するテンプレートファイルに追加します。
PHP
<?php
// 現在の記事のIDとカテゴリーを取得
$current_post_id = get_the_ID();
$categories = get_the_category();
// カテゴリーが一つでも存在するか確認
if ($categories) {
$category_ids = array();
foreach($categories as $category) {
$category_ids[] = $category->term_id;
}
// クエリパラメータの設定
$args = array(
'post_type' => 'post', // 投稿タイプ
'posts_per_page' => 5, // 表示する記事数
'category__in' => $category_ids, // 取得したカテゴリーIDを含む
'post__not_in' => array($current_post_id), // 現在の記事を除外
'orderby' => 'rand' // ランダムに表示
);
$related_posts = new WP_Query($args);
// 関連記事が存在するか確認
if ($related_posts->have_posts()) {
echo '<h3>関連記事</h3>';
echo '<ul>';
while ($related_posts->have_posts()) {
$related_posts->the_post();
?>
<li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li>
<?php
}
echo '</ul>';
// メインクエリをリセット
wp_reset_postdata();
}
}
?>
スクリプトの説明
get_the_category()
: 現在の投稿が属するカテゴリーを取得します。WP_Query
: WordPressで投稿を検索するためのクラスです。$args
配列で検索条件を指定します。category__in
: 指定したカテゴリーIDに含まれる投稿を検索します。post__not_in
: 検索結果から特定の投稿IDを除外します。ここでは現在表示している記事を除外しています。wp_reset_postdata()
:WP_Query
でメインクエリを上書きした後に、元のクエリの状態に戻すために必ず使用します。これを忘れると、他のテンプレートタグが正常に動作しない場合があります。
どちらの方法を選ぶかは、WordPressの習熟度や、どの程度カスタマイズしたいかによります。簡単な方法から試して、慣れてきたらコードでの実装に挑戦してみるのが良いでしょう。
【THE THOR(ザ・トール)】
は、企業におすすめのWordPressテーマです。特に、デザイン性とSEO対策を重視する企業にとって、優れた選択肢となります。また、初心者でも比較的簡単に高品質な企業サイトを構築できる点が評価されています。
WordPressテーマ「THE THOR(ザ・トール)」には、記事の最後に「関連記事」を表示する機能が標準で備わっています。
この機能は、プラグインを使わずに設定できるのが大きな特徴です。
主な設定項目は以下の通りです。
- 表示・非表示の切り替え: 関連記事を表示するかどうかを選択できます。
- タイトル: 「関連する記事」などのタイトルを自由に変更できます。
- 表示件数: 関連記事として表示する記事の数を指定できます(デフォルトは3件など)。
- デザイン: アイキャッチ画像の表示・非表示や、アスペクト比(縦横比)、カテゴリー表示などを設定できます。
- 表示順: 投稿日や更新日を表示するかどうかを設定できます。
これらの設定は、WordPressの管理画面の「外観」→「カスタマイズ」→「投稿ページ設定[THE]」→「関連記事設定」から行うことができます。
関連記事を表示することで、読者のサイト内回遊を促し、滞在時間を長くする効果が期待できます。