【WordPressプラグイン】人気記事 管理 WordPress Popular Posts 実践的なカスタマイズ
更新日:2025/02/14

はじめに
WordPressで人気記事を表示する際に欠かせないプラグイン「WordPress Popular Posts」。このプラグインは非常に柔軟で、様々なカスタマイズが可能です。今回は、実務でよく使用するカスタマイズ方法と、その実装のポイントについて詳しく解説していきます。
1. 基本的な表示期間の設定
WordPress Popular Postsでは、view数の集計期間を細かく設定することができます。以下が主な設定オプションです:
$query = new \WordPressPopularPosts\Query(array(
'limit' => 35,
'post_type' => 'post',
'order_by' => 'views',
'range' => 'last30days' // 期間設定
));
設定可能な期間オプション
last24h
: 過去24時間の人気記事last7days
: 過去1週間の人気記事last30days
: 過去30日間の人気記事all_time
: 全期間の人気記事custom
: カスタム期間
2. デザインのカスタマイズ
Popular Postsの表示デザインは、HTMLとCSSで自由にカスタマイズできます。以下は一般的な実装例です:
<ul class="popular-posts-list">
<?php foreach ($ranks as $rank): ?>
<li class="popular-post-item">
<a href="<?php echo get_the_permalink($rank->id); ?>">
<div class="post-thumbnail">
<?php echo get_the_post_thumbnail($rank->id, 'thumbnail'); ?>
</div>
<div class="post-content">
<h3><?php echo $rank->title; ?></h3>
<span class="view-count"><?php echo $rank->pageviews; ?> views</span>
<span class="post-date">
<?php echo get_the_modified_date('Y/m/d', $rank->id); ?>
</span>
</div>
</a>
</li>
<?php endforeach; ?>
</ul>
3. 高度なカスタマイズテクニック
3.1 カテゴリー別の人気記事表示
特定のカテゴリーの人気記事のみを表示したい場合:
$query = new \WordPressPopularPosts\Query(array(
'limit' => 5,
'post_type' => 'post',
'order_by' => 'views',
'range' => 'last30days',
'taxonomy' => 'category',
'term_id' => 'your-category-id'
));
3.2 除外設定
特定の投稿やカテゴリーを除外したい場合:
$query = new \WordPressPopularPosts\Query(array(
'limit' => 10,
'post_type' => 'post',
'order_by' => 'views',
'range' => 'all_time',
'pid' => '1,2,3', // 除外する投稿ID
'cat' => '-1,-2,-3' // 除外するカテゴリーID
));
4. パフォーマンス最適化
4.1 キャッシュの活用
データベースへのアクセスを減らすためにキャッシュを使用:
$cache_key = 'popular_posts_cache';
$popular_posts = wp_cache_get($cache_key);
if (false === $popular_posts) {
$query = new \WordPressPopularPosts\Query(array(
'limit' => 10,
'range' => 'last30days'
));
$popular_posts = $query->get_posts();
wp_cache_set($cache_key, $popular_posts, '', 3600); // 1時間キャッシュ
}
5. よくある問題と解決方法
5.1 view数が正しくカウントされない
- データベースのパーミッション設定を確認
- キャッシュプラグインとの競合をチェック
- サーバーのログ設定を確認
5.2 表示が遅い
- クエリの最適化
- キャッシュの導入
- 画像の最適化
- 必要最小限の投稿データのみを取得
まとめ
WordPress Popular Postsプラグインは、適切なカスタマイズによって、サイトの回遊率向上に大きく貢献できます。パフォーマンスとユーザビリティのバランスを考慮しながら、サイトに最適な実装を選択することが重要です
参考サイト

-
検索
(例) debug search etc.. -
カテゴリー
-
Windows↔️Macで文字化けしたZIPファイルを解決する方法【7-Zip活用ガイド】
更新日:2025/02/18
-
本番環境 / ステージング環境 でのGitブランチ切り替え方法と注意点 Note: witching to ‘origin/new_feature’. You are in ‘detached HEAD’ state…
更新日:2025/02/16
-
複数のWordPressサイトをまとめて検索・管理するには?
更新日:2025/02/16
-
【WordPress】SVGを投稿記事のサムネイルに!自作プラグイン(未実装🤷♂️)「nonce(ナンス)トークン」wp_postmetaテーブルを利用
更新日:2025/02/14
-
【WordPress】カスタムフィールド作成の仕方「ACF」Advanced Custom Fieldsの使用法
更新日:2024/06/10
298 view
-
mixhostでのWordPress利用について
更新日:2024/04/02
295 view
-
scrollHint
更新日:2024/03/13
246 view
-
LOLIPOPでWordPressインストール(サブディレクトリにインストールしたWordPressをドメイン直下で表示)
更新日:2024/06/13
235 view
-
XML Sitemap Generator for Google不具合のダウングレード対応、代替プラグイン
更新日:2024/06/13
234 view
-
Sass導入方法
更新日:2024/03/13
206 view
-
【SnowMonkey】納品までのフローまとめ
更新日:2025/02/15
163 view
-
【Snow Monkey】Googleサーチコンソール登録
更新日:2024/05/28
157 view
-
ワードプレスでフォントを変えたいとき、プラグインを使えば初心者でも簡単
更新日:2025/02/16
144 view
-
【Googleサーチコンソール】検索画面で表示させたくない「Googleのインデックス削除」
更新日:2024/06/07
129 view
-
【ショートコード】編集画面で任意の場所にHTMLファイルを挿入
更新日:2024/01/26
122 view
-
tailwindcss使い方
更新日:2024/03/13
119 view
-
キーワード検索で上位表示させる方法【SEO】
更新日:2023/10/28
119 view
-
Recline: GitHub Copilotで動作するClaude 3.5 Sonnet搭載の開発支援ツール
更新日:2025/01/20
105 view
-
WordPressプラグイン「All-in-One WP Migration」のトラブル
更新日:2022/03/31
83 view
-
【2022年】WordPressセキュリティー対策おすすめプラグイン2選
更新日:2022/02/21
70 view
-
【必須】ワードプレスセキュリティー対策まとめ【2022年】
更新日:2025/02/16
69 view
-
「THE THOR」を半年使ってみて、レビュー【メリット・デメリット】
更新日:2025/02/16
45 view
-
SSHを使用してGitHubのリポジトリをクローン、複数の接続元で公開鍵をディレクトリで区別する方法
更新日:2025/01/13
43 view
-
VSCodeで開発効率を劇的に向上させる!Roo-Clineプラグイン完全ガイド【Gemini API】
更新日:2025/02/08
41 view
-
「JSONスキーマ」と「Few-shot Learning」で実現する次世代生成AIソフトウェア開発の可能性
更新日:2025/02/12
40 view
-
THE THOR(ザ・トール)でグーグルアドセンスを使う
更新日:2025/02/16
39 view
-
WordPressの無料画像素材のおすすめダウンロードサイト!
更新日:2022/02/22
35 view
-
リファクタリング【VSCode Javasctipt Python】
更新日:2025/02/06
34 view
-
形態素解析とは?初心者でもわかるツールの使い方と実践例
更新日:2025/02/08
33 view
-
【Next.js AWS】音声文字起こし&要約、分析アプリケーション(S3)(Transcribe)(Amazon Bedrock)
更新日:2025/02/13
28 view
-
VSCodeプラグイン「 Pretter – Code formatter」「PHP Intelephense 」
更新日:2025/01/06
26 view
-
【CSS JavaScript サンプルコード】アコーディオン 続きを読む(Read more)Toggle 折りたたみコンテンツ
更新日:2025/02/05
23 view
-
【WordPress】SVGを投稿記事のサムネイルに!自作プラグイン(未実装🤷♂️)「nonce(ナンス)トークン」wp_postmetaテーブルを利用
更新日:2025/02/16
22 view
-
【WordPressプラグイン】人気記事 管理 WordPress Popular Posts 実践的なカスタマイズ
更新日:2025/02/15
22 view
-
Googleアドセンスとは?〜前編〜
更新日:2025/02/16
22 view
-
【WordPress】プラグイン不使用でカスタムタクソノミーを設定、絞り込み検索について
更新日:2025/01/26
18 view
-
スマートフォンファーストのWeb開発実践ガイド
更新日:2025/01/23
16 view
-
WordPressでカスタムフィールドを使った記事のスコアリングシステムの実装
更新日:2025/01/27
15 view
-
AWSのOCRサービス完全ガイド:Textract、Rekognition、Comprehendの使い分け
更新日:2025/02/09
14 view