賢威7.0から実装されたサイドバーウィジェットに「PV数ランキング表示」がありますが、非常に便利ですよね。
PV数だけでなく、はてブ数でもランキング表示が出来る点、表示方法が6つのタイプから選択出来る点など、使い勝手の良いウィジェットです。
これを使えば必須とも言われる、人気記事を表示するプラグイン「WordPress Popular Posts」を使わなくてもいいので、プラグイン数を減らす事が出来ます。
functions.phpを編集する
特定の記事をPV数ランキングウィジェットから非表示にするにはfunctions.phpを編集します。functions.phpの編集を誤ると、サイトが表示されなくなる場合があるので、必ずバックアップを取るようにして下さい。
変更前
if ($start == 0) {
// PV数の多い記事の情報とPV数を取得
$counts = $wpdb->get_results("SELECT ID, post_title, meta_value AS pv FROM ".$wpdb->prefix."postmeta AS meta LEFT JOIN ".$wpdb->prefix."posts AS po ON meta.post_id=po.ID WHERE meta_key='pvc_views' AND post_status='publish' AND (post_type='post' OR post_type='page') GROUP BY meta.post_id ORDER BY (pv+0) DESC LIMIT 0,".$number, ARRAY_A);
} else {
$end = date("YmdH");
$counts = $wpdb->get_results("SELECT post_id AS ID, post_title, SUM(pv_count) AS pv FROM ".$wpdb->prefix."keni_pv AS pvs LEFT JOIN ".$wpdb->prefix."posts AS po ON pvs.post_id=po.ID WHERE pv_dates BETWEEN ".$start." AND ".$end." GROUP BY post_id ORDER BY pv DESC, po.post_modified DESC LIMIT 0,".$number, ARRAY_A);
}
functions.phpの2,432行目~2,442行目あたりにPV数の多い記事の取得するコードがあるので、これを削除して下さい。
見つけにくい場合は「Ctrl+F」キーを押して、検索窓に「// PV数の多い記事の情報とPV数を取得」入力して探してみて下さい。
変更後
$ext = " AND meta.post_id NOT IN (記事ID,記事ID,記事ID)"; //非表示にしたい記事IDをカンマ区切りで記述する
if ($start == 0) {
// PV数の多い記事の情報とPV数を取得
$counts = $wpdb->get_results("SELECT ID, post_title, meta_value AS pv FROM ".$wpdb->prefix."postmeta AS meta LEFT JOIN ".$wpdb->prefix."posts AS po ON meta.post_id=po.ID WHERE meta_key='pvc_views' AND post_status='publish' AND (post_type='post' OR post_type='page')".$ext." GROUP BY meta.post_id ORDER BY (pv+0) DESC LIMIT 0,".$number, ARRAY_A);
} else {
$end = date("YmdH");
$counts = $wpdb->get_results("SELECT pvs.post_id AS ID, post_title, SUM(pv_count) AS pv FROM ".$wpdb->prefix."keni_pv AS pvs LEFT JOIN ".$wpdb->prefix."posts AS po ON pvs.post_id=po.ID LEFT JOIN ".$wpdb->prefix."postmeta AS meta ON meta.post_id=po.ID WHERE meta_key='pvc_views' AND post_status='publish' AND (post_type='post') AND pv_dates BETWEEN ".$start." AND ".$end.$ext." GROUP BY pvs.post_id ORDER BY pv DESC, po.post_modified DESC LIMIT 0,".$number, ARRAY_A);
}
削除した箇所に上記のコードを記述します。「記事ID」と書かれている所をIDに変更して、ファイルを更新して下さい。
記事IDを確認するには?
WordPressダッシュボードから「投稿」⇒「投稿一覧」をクリックします。記事IDを確認したい記事タイトルにマウスカーソルをあわせます。
ブラウザのステータスバーにURLが表示されます。post=の後に続く数字がこの記事のIDになります。
MATO-MEMO
投稿記事だけではなく、固定ページや保護している記事にも対応するので試してみて下さい。また、固定ページIDの確認も投稿記事と同じ方法です。
非表示にしたい記事や固定ページがある度に、functions.phpに記述する面倒くささはありますが、表示されてしまうよりは全然良いですからね・・・。
この記事が役に立ったらいいね!しよう
最新情報をお届けします
Twitterでアクロニウムをフォローしよう!
Follow @acronymjp