WooCommerceショートコード

情報を追記している場合はありますが、古い情報を訂正はしていませんので、公開年月日を参照してください。プラグイン・タグ、いずれもワードプレス・PHPのバージョン等によって動作しない場合もあります。

WooCommerce で商品一覧には在庫のない商品も表示する設定になっているのだが、トップページにショートコードで表示している新着一覧には掲載したくないということで条件を追加。

function front_recent_products_shortcode_args( $args, $atts ){
    $args['meta_query'] = array(
        array(
            'key'     => '_stock_status',
            'value' => 'instock',
        ),
    );
    return $args;
}
add_filter( 'woocommerce_shortcode_products_query', 'front_recent_products_shortcode_args', 10, 2 );