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がインストールされていないと利用できません