【重要】テーマ販売終了のお知らせ(対象:TCD029 – TCD013)

TCDテーマcommon:販売数ゼロの商品をランキングに含まないようにしたい

Q. 固定ページテンプレート「ランキングページ」で、販売数が0の商品もランキングに含まれてしまいます。

A. 「page__ranking.php」を修正して販売数0の商品を除外することが可能です。

commonテーマでは、商品のカスタムフィールド「total_sales」を使用して販売数順のランキングの対象となる商品リストを作成しています。

page__ranking.php:15~22行目

    $query_args = array(
      'posts_per_page' => $ranking_product_num,
      'post_type' => 'product',
      'post_status' => 'publish',
      'ignore_sticky_posts' => 1,
      'meta_key' => 'total_sales',
      'orderby' => array( 'meta_value_num' => 'DESC', 'ID' => 'DESC' )
    );

ここで、total_salesの値が0より大きいものだけを商品リストに含むよう、メタクエリーを使用して、条件を絞り込むことができます。

カスタマイズ例

    $query_args = array(
      'posts_per_page' => $ranking_product_num,
      'post_type' => 'product',
      'post_status' => 'publish',
      'ignore_sticky_posts' => 1,
      'meta_key' => 'total_sales',
      'meta_query' => array(
        array(
          'key' => 'total_sales',
          'value' => 0,
          'compare' => '>',
          'type' => 'NUMERIC'
        )
      ),
      'orderby' => array( 'meta_value_num' => 'DESC', 'ID' => 'DESC' )
    );

なお、比較演算子の「>」や数字の「0」を変更することで条件をアレンジすることも可能ですので、お好みの条件に合わせてみてください。

参考情報

WP_Meta_Query

この記事は役に立ちましたか?

もし参考になりましたら、下のボタンで教えてください。
今後の記事作成の参考とさせて頂きます!

同じテーマのカスタマイズ記事