Simplicityの人気記事ウィジェットから今見ている記事を除外するカスタマイズ

Simplicityでは「人気記事」ウィジェットを使えばカテゴリ別の人気記事を出力することができますが(デフォルトの設定では)今見ている記事が人気記事だったらその記事も含まれるようになっています。

Simplicityの人気記事ウィジェット

今見ている記事が人気記事だと分かるメリットもあるので一概にどちらが良いかは分かりませんが個人的には「他の記事への回遊を促す」目的なので閲覧中の記事は除外する設定にしてみました。

なお現時点(ver1.6.7)ではSimplicity本体に実装する予定は無いそうですが今後使えるようになる可能性もあるのでバージョンがこれより新しい場合はすでに実装されているか確認してみてください。

広告

人気記事ウィジェットから閲覧中の記事を除外する手順

それでは具体的にどうやって「閲覧中の記事を除外する」のか書いていきます。

親テーマのPHPファイルを子テーマにコピー

親テーマフォルダの中にある「popular-posts-entries.php」というファイルを子テーマにコピーします。

FileZillaで親テーマフォルダから小テーマフォルダにコピー

これで子テーマフォルダで編集した内容がブログに反映されるようになります。

Simplicityはテーマの更新ペースが速いのでPHPファイルを編集する時は子テーマにコピーする癖を付けたおいたほうが後々の手間が減ると思います。

popular-posts-entries.phpの中身

子テーマにコピーしたpopular-posts-entries.phpファイルを開いて中身を見てみると34行目から「どのように記事を抽出するのか」書かれていることがわかります。

例えば cat="'.$now_id.'"& は「現在のカテゴリから抽出する」など1行ずつ読み解いていけば意外と分かる部分が多くあります。

この中に「現在閲覧中の記事は除外する」という設定を追記すればOKということですね。

今見ている記事を除外する設定

追記するコードは以下のようになります。

pid というパラメータが「どの記事を除外するか」というパラメータで、

'.get_the_ID().' というのが「現在の記事ID」を表しています。

このコードをどの行でも構わないので挿入すると機能するようになります。

正しく除外されているか確認

最後に閲覧中の記事が除外されているか実際にブログを開いて確認してみます。

閲覧中の記事が人気記事ウィジェットに表示されていないことを確認

閲覧中の記事を表示するかどうかはブログによって変わってくると思いますが閲覧中の記事を除外したい人の参考になれば良いなと思います。

<関連>
Simplicityでカテゴリ別人気記事を簡単に設定

今見てる記事と同じカテゴリの人気記事を表示するプラグイン

広告

このページのシェア・保存はこちら

コメント(本文のみでOK。URL含むコメントは承認待ちになります)

メールアドレスが公開されることはありません。