現在の接続環境は
です

記事内にプロモーションが含まれています。

php WordPress カスタマイズ カスタマイズ 伝えたいこと 備忘録

プロモーションを含みます

プラグインなしで人気記事ランキング表示方法(とりあえず簡単な方法と詳細方法)

所要時間目安: 3

This session is using  IPv4  is established in

今日は2025年7月25日です。

この記事は2021年9月28日のものです。現在は状況が異なる可能性がありますのでご注意ください。

目次に行く・戻る

2025年7月25日 (金曜日)↓における週間月間人気記事トップ3は?↓

  • 本日
  • 週間
  • 月間

計測データがありません。

  1. エクストレイルT32おすすめタイヤDAVANTI(ダヴァンティ) タイヤ サマータイヤ 1PV

    タイトルにあるように、多くのSUV車において比較的安価でおすすめタイヤのDAVANTI(ダヴァンティ) タイヤ サマータイヤですが、DAVANTI(ダヴァンティ) はイギリス製のタイヤはずなのですが、…

    もっと読む

  1. エクストレイルT32おすすめタイヤDAVANTI(ダヴァンティ) タイヤ サマータイヤ 1PV

    タイトルにあるように、多くのSUV車において比較的安価でおすすめタイヤのDAVANTI(ダヴァンティ) タイヤ サマータイヤですが、DAVANTI(ダヴァンティ) はイギリス製のタイヤはずなのですが、…

    もっと読む

ずっとプラグインを使用しないでポピュラーポスト(Popular Post)ランキングを表示したいと考えていました。有名所のプラグインではWordPress Popular PostsやPost Viewというものを使って人気記事をランキング化することができます。しかし、プラグインを使用すればする程サイト自体が重くなってしまいます。10個くらいまでなら大丈夫かもしれませんがサーバやプラグインの種類にもよります。できる限りプラグインを使用しない方法でできることはしていくようにしたいですですよね。(人によるかもしれませんが・・・。)

アドセンス336pxPC閲覧記事下表示1つ目コード

この記事を読む方へのオススメ

メルカリ招待コード:

最も簡単にプラグインを使わずに人気記事をランキング化する方法は以下になります。

 

function.phpに以下コードを記載します。

※function.phpをいじるので必ずバックアップをとってから行ってください。

 

// 人気記事出力用関数
function getPostViews($postID){
$count_key = 'post_views_count';
$count = get_post_meta($postID, $count_key, true);
if($count==''){
delete_post_meta($postID, $count_key);
add_post_meta($postID, $count_key, '0');
return "0 View";
}
return $count.' Views';
}
// 記事viewカウント用関数
function setPostViews($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_key, $count);
}
}
remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0);

 

上記コードを追記しその後は自分が表示させたいテンプレート部分の好きなところに以下コードを記載することで、指定した記事数のみが表示されます。

 

<?php
// views post metaで記事のPV情報を取得する
setPostViews(get_the_ID());


$args = array(
'meta_key' => 'post_views_count',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'posts_per_page' => 5 // ← 5件取得
);


// WP_Queryによるループ
$query = new WP_Query($args);
if ($query->have_posts()) :
while ($query->have_posts()) :
$query->the_post();
?>

<!-- サムネイルの表示 タイトルの表示 -->
<div>
<a href="<?php the_permalink(); ?>">
<?php if ( has_post_thumbnail() ) { the_post_thumbnail( 'post-thumbnail'); } ?>
<p>
<?php the_title(); ?>
</p>
<?php echo getPostViews(get_the_ID()); // 記事閲覧回数表示 ?>
</div>

<?php
endwhile;
endif;
wp_reset_postdata();
?>

 

参照サイト)

元は上記サイトですが、

もう少しいくつかのサイトを拝見させていただきました。

参照サイト2)

 

より正確に表示させたい場合には以下のサイトがとても参考になります。

正確にカウントして記事ランキングを表示させたい場合には以下の方法をおすすめします。

サイトのみ掲載させて頂きます。

こちらのサイトは、かなり確実にプラグインを使わずに人気記事ランキングを定期的にリセットして表示させることができます。

もう少し上達してきた時に、挑戦させていただこうかと思っています。

興味のある方はお試ししてみてください。

 

追記)さらに最新版のサイトを参考にさせていただこうかと思っています。

現在は、「query_posts」は使わないほうが吉のようです。

ちょっと時間がないのでとても勉強になるサイトなので掲載だけさせて頂きます。

参考にさせて頂きます。ありがとうございます。

あなたにおすすめ


Multiplex 広告

\楽天ポイント4倍セール!/
楽天市場
\ポイント5%還元!/
Yahooショッピング

あなたが訪問してから

0 秒経過 🎉

入学入社まであと…入学入社祝いはどんなPresent(プレゼント)でどのように過ごされますか?

ホワイトデープレゼントは以下などの豊富なキャンペーン商品から選ぶと良いと思います。

ブログサービスが始まってから:


カウントダウンタイマー

おすすめの記事一部広告

Total811


アドセンス336pxPC閲覧記事下表示1つ目コード

目次に戻る

よろしかったらシェアよろしくお願いします。

-php, WordPress, カスタマイズ, カスタマイズ, 伝えたいこと, 備忘録

目次に戻る

目次に戻る


コメントを表示(0)

コメントを書く

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


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

新着コメント