新潟県妙高市を拠点とする、ホームページと広告の相談相手

MENU [+]閉じる [×]
プラグイン「WordPress Popular Posts」を使用!人気の記事一覧を表示する方法【WordPress】

今回のテーマはWordPressで作ったサイトに、プラグイン「WordPress Popular Posts」と少しのPHPのコードで「人気の記事一覧」を作成する方法についてです(^^)v

早速いきましょう!

この記事の目次

手順1:プラグイン「WordPress Popular Posts」を有効化

まずはWordPressのプラグイン「WordPress Popular Posts」をインストール&有効化します。

なお、記事作成時点での検証済み最新バージョンが「4.6.6」となっています、あらかじめご注意ください。

ページの先頭へ戻る

手順2:WordPress管理画面の「設定」から、もろもろ設定する

次に、WordPressの管理画面の左サイドのメニューにある「設定」を確認してみてください。

「一般」「投稿設定」「表示設定」と順に見ていくと……、「WordPress Popular Posts」という項目が増えているのがお分かりですか(⌒▽⌒)?

4つのタブに分かれていて、そこでいろいろな設定ができます!

統計情報

1つ目のタブは「統計情報」です。

ランキングの表示順として、コメント数の順や、閲覧数の順、そして1日あたりの平均コメント数の順も指定できます。

あとは「投稿タイプ」で、どのコンテンツまでをランキングの対象にするかを設定できます。

「投稿」「固定ページ」を含める場合はそれぞれ「post」「page」をカンマ区切りで入れておきます。

プラスで、カスタム投稿タイプのコンテンツもランキングに含める場合は「?post_type=XXXXXX」の「XXXXX」の値も加えておきます。

「上限」は表示件数ですし、選択期間内に公開されたコンテンツのみを集計対象にするようにもできます。

ツール

2つ目のタブは「ツール」です。

ランキングに「アイキャッチ画像」を入れる場合の設定や、レスポンシブ対応の有無、ログの出力からリンクの開き方まで、細かい内容を決めることができます。

パラメーター

3つ目のタブとして紹介されている「パラメーター」は、かなり詳細に紹介されています(@_@;)

「人気の記事」のランキングの見出し部分から、サムネイルの設定、テキストの文字数の上限の設定などなど。

応用次第で、かなり自由度の高いランキングが作れると思います。

紹介

プラグイン「WordPress Popular Posts」についての紹介です。

「うんうん、なるほど」と読みつつ、気になる箇所があれば実装時に注意しておくくらいでいいと思います。

ちなみに私は読んだだけで、特に何もありませんでした(^^)v

ページの先頭へ戻る

参考1:本当は教えたくない「妙高Web屋」の人気記事ランキングのPHPコード

「人気の記事一覧」を表示するために、編集が必要なのは、まず[functions.php]です。

そして「人気の記事一覧」を表示したい箇所のパーツのPHP、この場合は[sidebar.php]です。

[functions.php]に追加する内容

事前に[functions.php]のバックアップを取った上で、下記の内容を追加してみてください。

もちろん、必要に応じて編集して使ってください、特にHTML出力部分は(^^)

function my_custom_single_popular_post( $post_html, $p, $instance ){
	$myk_mainImg = get_field('myk_mainImg',$p->id);
	if($myk_mainImg){
		$thumbnail_img = $myk_mainImg;
	} else {
		$thumbnail_img = bloginfo('url').'/assets/images/hLogo.png';
	}
	$custom_id= $p->id;
	$output = '<tr><th><a href="' . get_the_permalink($p->id) . '"><img src="' . $thumbnail_img . '" alt="'. $p->title.'" /></a></th><td><p class="title"><a href="' . get_the_permalink($p->id) . '">'. $p->title.'</a></p></td></tr>';
	return $output;
}
add_filter( 'wpp_post', 'my_custom_single_popular_post', 10, 3 );

ちなみに、上記の[myk_mainImg]は、メインビジュアルの画像に使うカスタムフィールドの変数名です。

こちらも、お使いのWordPressの項目や設定に応じて臨機応変にしてください(^-^)

[sidebar.php]に記載する内容

[sidebar.php]には、このような内容を記載しています。

設定している値も、英語の意味を踏まえれば何と無くわかりそうですよね(^^)

10件まで表示して、集計は1週間単位で、ちなみにカスタム投稿タイプの[result]というのは「制作実績」のことです。

<?php $args = array(
'limit' => 10,
'range' => 'weekly',
'post_type' => 'post,page,result'
);
wpp_get_mostpopular( $args );
?>
<?php wp_reset_query(); ?>

末尾の[wp_reset_query();]は、記述しなくても問題なく動作する場合があります。

でも「ん?思ったように動かないなぁ??」という場合は「人気の記事」部分の末尾に1行だけ追加しておいてください(^^)

ページの先頭へ戻る

参考2:ちなみに[function.php]に追加しなくてもできるけど…

見出しの通り、[function.php]に何も追記しなくても、サイドバーなら[sidebar.php]だけで事足りる場合もあるんです(^^)v

それが、[post_html]を配列内にセットしてしまうタイプのこちらです。

[sidebar.php]に記載する内容

<?php $args = array(
'limit' => 10,
'range' => 'weekly',
'stats_views' => 1,
'post_type' => 'post,page,custom-post-sample01,custom-post-sample02,custom-post-sample03',
'post_html' => '<li><a href="{url}">{text_title}({views}PV|{date}公開)</a></li>',
'stats_date' => 1,
'stats_date_format' => 'Y年n月j日'
);
wpp_get_mostpopular( $args );
?>
<?php wp_reset_query(); ?>

[wp_reset_query();]を末尾に追記しておくのは先ほどの例と同じです。

[post_html]で{url}・{text_title}・{views}・{date} といった変数を設定しているのは、上記で紹介した「パラメーター」のタブで紹介されている変数です(^^)

応用次第で、いろいろ試してみましょう!

なお、私が試したところによると、[stats_views]の値を[1]にしておかないと[post_html]で変数 {views} を指定してもページビューが表示されないようです。

また同様に、[stats_date]の値を[1]にしておかないと[post_html]での変数 {date} の表示が思わしくないことも確認しました。

ページの先頭へ戻る

こちらの情報がWordPressのサイトの「人気記事一覧」を作りたい方のお助けになれば幸いですm(__)m

この記事の感想をお寄せください

[プラグイン「WordPress Popular Posts」を使用!人気の記事一覧を表示する方法【WordPress】]の感想を、下記のリンク先の「感想投稿フォーム」よりお気軽にお寄せください。
メールアドレスは不要です。

感想投稿フォームへ

いいね!と思っていただけたらSNSでシェアしてください♪

関連記事一覧:プラグイン「WordPress Popular Posts」を使用!人気の記事一覧を表示する方法【WordPress】

WordPressでホームページを制作したことのある方なら「ワードププレスのディレクトリ問題」に直面された方もいらっしゃるかと思います。 WordPres …… 続きを読む

ホームページを作る上で「titleタグ(タイトルタグ)」というものが重要な要素の一つになります。 皆さんがブログを書いている場合は、その投稿画面で入力した …… 続きを読む

シリーズ「妙高Web屋のホントは公表したくないホームページ制作」です。 皆さんはホームページを作りたいとお考えになって、制作業者さんやデザイナーさんといっ …… 続きを読む

Copyright (C) 妙高Web屋 All Rights Reserved.

ページの先頭へ