【プラグイン不要】WordPressで人気記事を一覧表示する方法

プラグイン不要でWordPressで人気記事を一覧表示する方法
小ネタ君
WordPressサイトを運営していると、人気記事を表示することは非常に重要です。
この記事では、プラグインを使用せずに、WordPressで人気記事を一覧表示する方法について詳しく解説します。
目次

WordPressで人気記事を表示するメリット

人気記事を表示することには多くのメリットがあります。
ここでは、その主な理由をいくつか紹介します。

ユーザーエンゲージメントの向上

人気記事を表示することで、ユーザーが興味を持ちやすいコンテンツにアクセスしやすくなり、サイト滞在時間が増加します。

例えば、訪問者が過去に人気があった記事に再度アクセスすることで、新たな発見があるかもしれません。

サイト内回遊率の向上

ユーザーがサイト内を回遊しやすくなるため、複数の記事を読むことが期待できます。
これにより、サイト全体の閲覧数が増加し、SEO効果も期待できます。

SEO評価の向上

人気記事を表示することで、検索エンジンに対しても好影響を与えることができます。
検索エンジンは、ユーザーが多く閲覧する記事を高く評価する傾向があるため、結果としてサイト全体の評価が上がる可能性があります。

人気記事を手動で表示する方法

プラグインを使用せずに人気記事を表示する方法について解説します。
手動で設定することで、細かいカスタマイズが可能です。

記事一覧の作成

まずは、人気記事を手動で選び、リストを作成します。
これは、過去のアクセス解析データを元に行うことが一般的です。

例えば、Google Analyticsを使用して人気記事を特定する方法があります。

サイドバーへの設置

作成した記事一覧をサイドバーに表示するために、ウィジェットを使用します。
WordPressの「外観」→「ウィジェット」から「カスタムHTML」ウィジェットを選び、先ほど作成したリストをHTML形式で入力します。

<ul>
  <li><a href="記事URL1">記事タイトル1</a></li>
  <li><a href="記事URL2">記事タイトル2</a></li>
  <li><a href="記事URL3">記事タイトル3</a></li>
</ul>

カスタムHTMLの利用

サイドバー以外にも、記事本文やフッターなど任意の場所にカスタムHTMLを利用して人気記事を表示できます。これにより、ユーザーの目に留まりやすい場所に人気記事を配置することが可能です。

コードを使って人気記事を表示する方法

人気記事一覧を表示するためのPHPコード作成
プラグインを使わずに、コードを使って動的に人気記事を表示する方法について解説します。
これにより、管理の手間を減らし、自動的に人気記事が更新される仕組みを作ることができます。

ステップ1:ビュー数を記録するカスタムフィールドの作成

まず、各記事のビュー数を記録するためにカスタムフィールド post_views_count を作成します。以下のコードを functions.php に追加します。

<?php
// ビュー数を記録する関数
function set_post_views($postID) {
    $count_key = 'post_views_count';
    $count = get_post_meta($postID, $count_key, true);
    if ($count == '') {
        $count = 0;
        delete_post_meta($postID, $count_key);
        add_post_meta($postID, $count_key, '0');
    } else {
        $count++;
        update_post_meta($postID, $count);
    }
}

// ビュー数をカウントするためのフック
function track_post_views($post_id) {
    if (!is_single()) return;
    if (empty($post_id)) {
        global $post;
        $post_id = $post->ID;
    }
    set_post_views($post_id);
}
add_action('wp_head', 'track_post_views');

// 既存のリンクリレーションを削除(パフォーマンス向上のため)
remove_action('wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);
?>

このコードは、記事が表示されるたびに post_views_count カウントを増加させます。

ステップ2:人気記事の取得と表示

次に、ビュー数に基づいて人気記事を取得し、表示するためのコードを functions.php に追加します。

<?php
function get_popular_posts() {
    $args = array(
        'posts_per_page' => 5, // 表示する記事数
        'meta_key' => 'post_views_count',
        'orderby' => 'meta_value_num',
        'order' => 'DESC',
    );
    $popular_posts = new WP_Query($args);
    if ($popular_posts->have_posts()) {
        echo '<ul>';
        while ($popular_posts->have_posts()) {
            $popular_posts->the_post();
            echo '<li><a href="' . get_the_permalink() . '">' . get_the_title() . '</a></li>';
        }
        echo '</ul>';
    }
    wp_reset_postdata();
}
?>

このコードは、カスタムフィールド post_views_count に基づいて人気記事を取得し、表示するためのものです。

ステップ3:ショートコードの作成

最後に、ショートコードを作成して、任意の場所に人気記事を表示できるようにします。

<?php
function popular_posts_shortcode() {
    ob_start();
    get_popular_posts();
    return ob_get_clean();
}
add_shortcode('popular_posts', 'popular_posts_shortcode');
?>

これにより、記事本文に [popular_posts] と記載するだけで人気記事を表示することが可能になります。

または、特定テーマファイル内に固定で人気記事を表示させたい場合には、 <?php get_popular_posts(); ?> を挿入します。
例えば、サイドバーに表示したい場合は sidebar.php に、フッターに表示したい場合は footer.php に追加します。

人気記事表示に役立つプラグイン

プラグインを使用することで、さらに簡単に人気記事を表示することができます。
ここでは、特におすすめのプラグインを2つ紹介します。

WordPress Popular Posts

このプラグインは、非常にカスタマイズ性が高く、人気記事を簡単に表示できるのが特徴です。
表示スタイルや期間を細かく設定できるため、自分のサイトに最適な表示方法を選択できます。

Top 10

Top 10は、訪問者数をカウントし、最も多くの訪問者があった記事を表示するプラグインです。
簡単な設定で人気記事をサイドバーや記事内に表示することができ、カスタマイズも豊富です。

まとめ

小ネタ君
人気記事を表示することで、ユーザーエンゲージメントを向上させ、SEO効果も期待できます。
プラグインを使用せずに手動で設定する方法から、PHPコードを利用した自動化まで、さまざまな方法を紹介しました。
自分のサイトに最適な方法を選び、効果的に人気記事を表示してみてください。

この記事を書いた人

日本でもっとも利用されているWordPressのサーバー移転&保守管理サービス『サイト引越し屋さん』のマーケティング事業部です。
本サイトの企画や制作、監修はサイト引越し屋さんが行っております。
>>サイト引越し屋さんサービスサイトはこちらです。

本サイトにてご提供している情報については、最新かつ正確な情報を提供するよう努力していますが、情報の正確性や完全性を保証するものではございません。また、コンテンツには一部プロモーションが含まれております。本サイトの情報を利用することによって生じたいかなる損害に対しても、当社は責任を負いかねます。情報をご利用される際は、ご自身の判断と責任において行っていただきますようお願い致します。

WordPressを運用されている方、必見!
  ↓ ↓ ↓
目次