Woocommerceは最も普及している無料のワードプレス用のEコマースプラグインです。このWoocommerceで特定カテゴリの商品のみを抽出・取得するPHPコードをご紹介します。
Woocommerceの特定カテゴリーの商品を取得
Woocommerceは、ワードプレスのカスタム投稿タイプproductに商品情報を保存しています。
この商品リストは、ワードプレスの一般的なループのプログラムから、カテゴリーのスラグを指定して取得可能です。
$args = array( 'post_type' => 'product', //Woocommerceの商品のカスタム投稿タイプ 'posts_per_page' => 10, //取得する数 -1 を指定すると全部取得 'product_cat' => 'カテゴリーのスラグ', 'paged' => '1' //ページ数 ); $loop = new WP_Query( $args ); while ( $loop->have_posts() ) : $loop->the_post(); global $product; echo '<br /><a href="'.get_permalink().'">' . woocommerce_get_product_thumbnail().' '.get_the_title().'</a>'; endwhile; wp_reset_query();
また、Woocommerceの組み込み関数からも特定カテゴリーの商品を抽出することが可能です。
$args = array( 'category' => array( 'カテゴリーのスラグ' ), 'limit' => 10,//取得する数 'page' => 1,//ページ数 ); $products = wc_get_products( $args );
※ wc_get_productsはWoocommerceがインストールされていないと利用できません