当サイトには広告が含まれております

直近1ヶ月に投稿した記事の人気順位から固定ページを取り除く

この記事は最終更新日から10年経過しています。内容が古い可能性があります。

Image

以前「直近1ヶ月に投稿した記事の人気順位を表示するテンプレートを作りました」という記事で、このblogのメニューにある 過去1ヶ月の投稿 読まれた順表示 というページを表示するテンプレートを作りました。

投稿ページだけの人気を知りたくて作ったのですが、固定ページが入ってしまってたので投稿だけの人気順位になるように修正しました。

記事をざっと見る

修正前は固定ページも入ってました

修正前は、

Image

このように、blogの記事で見せるために作った固定ページまで順位に入ってしまっていました。

テンプレートで 固定ページでないとき という条件を付ける

テンプレートで記事を取ってきて取得するところでの判定はこんな感じになっていました。

if(($postValue->post_date > $oneMonthBefore) AND ($p['post_title'] != 'Home page')){

$postValue->post_date > $oneMonthBefore というところで1ヶ月前の日付より大きい、つまり1ヶ月以内の記事であること
$p[‘post_title’] != ‘Home page’ 記事のタイトルが Home page(トップページ) でないこと

を判定しています、これを

if(($postValue->post_date > $oneMonthBefore) AND ($p['post_title'] != 'Home page') AND ($postValue->post_type != 'page')){

このように修正しました。追加した部分は、

$postValue->post_type != ‘page’ post_type という値が page のときは固定ページなので、固定ページではないことという判定です。

この $postValueというは Jetpack Post Viewsstats_get_csvという関数で取得したpostです。そのため、WordPressで一般的に使う is_post() とかでは判定できないため、取得した$postValueの中身を見てこの値を見つけました。

結果:固定ページが取り除かれて投稿だけの一覧になりました

上記で修正した結果、

Image

このように固定ページが取り除かれて、投稿だけの一覧になりました(^^)/

テンプレートファイルのダウンロードはこちら↓
page-recentOnemonthPostedPopular

この記事が気に入ったら
いいね または フォローしてね!

あなたのシェアが励みになります!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントを残す

記事をざっと見る