恐らくホトンドの方に求められてないのは知っていますが、昨日やっていたjetpack統計情報から人気記事を出力する方法の特定カテゴリへの分岐がやっと出来ました。終われば簡単な事でしたが、激しく迷走しました。
広告
welcartの商品カテゴリのみ、jetpakの統計情報から人気ランキングを出力する方法
昨日書いたコードは投稿記事のみに限定しているだけで、ブログと共存させ難いコードでしたが、やっとこさ商品カテゴリのみに絞るコードに辿りつきました。
結果、近いところを勘違いで迷走していたようです(汗)
<?php $top_posts = stats_get_csv('postviews', "days=1&limit=8"); ?> <?php foreach($top_posts as $post): ?> <?php $post_obj = get_post($post['post_id']); $cat = get_the_category( $post_obj->ID ); $cat = $cat[0]; ?> <?php if (isset($post_obj) && $post_obj->post_type == 'post' && $cat->category_parent == '商品カテID' && $cnt < 記事数) { $pop_img = usces_the_itemImage(0,300,300,$post_obj,"return"); $pri = usces_the_firstPrice('return', $post_obj ); $price = number_format($pri); $itemName = usces_the_itemName('return', $post_obj ); echo ' <li><article class="thumbnail-box"><a href="'.get_permalink( $post_obj->ID ).'">'.$pop_img.'<h2 class="thumb-title entry-title">'.$itemName.'</h2>¥'.$price.'<em class="tax">(税別)</em></a></article></li>'; $cnt++; } ?> <?php endforeach; wp_reset_postdata(); ?>
前回と変わったのはこの三行。
$cat = get_the_category( $post_obj->ID ); $cat = $cat[0]; ?> <?php if (isset($post_obj) && $post_obj->post_type == 'post' && $cat->category_parent == '商品カテID' && $cnt < 記事数)
get_the_categoryでカテゴリーを取得して、if文で商品カテゴリのみ出力させるようにしています。
この理屈は元々分かっていたのですが、親カテゴリで出力しなかったのが上手くいかない原因だったようです(汗)つまらない部分でえらい時間を浪費しましたが、商品カテに絞り込めたお陰で絞り込む日数を1日にしても、ブログ記事が出力されないので安心して出力出来るようになりました。
あー ホント苦労したです・・・ こんな事で(汗)
おすすめのコンテンツ
広告