ワードプレスのテーマAFFINGERはランキングを簡単につくれて、特定の位置にそれを表示してくれるテーマです。
表示位置はいくつか選択できますが、”ページ”にしてしまうと、全てのページにランキングが出力されます。これは都合が悪いことがありますよね。
そこで特定ページのみ非表示にする方法です。
方法
結論から知りたいと思うので、まずはコードを紹介。
single.phpの61行目あたりに以下のコードがあるはずです。
<?php get_template_part( ‘popular-thumbnail’ ); //任意のエントリ ?>
この下に以下のようにコードを入れます。
1 2 3 4 5 6 7 8 9 10 11 |
<?php $pageID = get_the_ID(); //echo $pageID; switch($pageID){ case 59: case 366: break; default; get_template_part( 'st-rank' ); //これがランキング } ?> |
上記の例だとページID59と366のページのみランキングが表示されず、他のページでは表示されます。
ページIDは、ページの編集画面でURLを見れば分かりますので調べてください。
もっとエレガントな方法があるのかな?僕の場合はページ数が少ないのでこれで運用してます。
どんなときに使うの?
例えば、A、B、Cの商品に対し、それぞれを1,2,3位のランキング対象にしたとします。
さらに、Aの個別紹介ページを作ったとします。
この際Aの紹介ページではBやCの商品に気移りしてほしくないわけです。
そこでランキングにBやCが出ていたらきになっちゃいますよね。
そういうときにあえてランキングを出さないことでAの商品のみに興味を持ってもらうということですね。