WordPress woo Commerce按品牌获取产品

时间:2018-10-04 10:52:57

标签: wordpress woocommerce product

在我的 WordPress 项目中,尝试显示基于products list的{​​{1}}

这是我的文件夹结构。这是在android文件夹内创建一个API。

enter image description here

android / brands_products.php 中,我想按品牌名称显示产品列表。

我尝试了以下代码:

brand name

但不起作用。

  

示例:Pb是<?php require_once( '../wp-load.php' ); if ( woocommerce_product_loop() ) { woocommerce_product_loop_start(); if ( wc_get_loop_prop( 'total' ) ) { while ( have_posts() ) { the_post(); /** * Hook: woocommerce_shop_loop. * * @hooked WC_Structured_Data::generate_product_data() - 10 */ do_action( 'woocommerce_shop_loop' ); wc_get_template_part( 'content', 'product' ); } } } ?> ,要选择Pbs品牌产品

2 个答案:

答案 0 :(得分:2)

请使用以下代码:

<?php
require_once('../wp-load.php');   
global $woocommerce;
global $product;
$brand_product_args = array(
                'post_type' => 'product',
                'posts_per_page' => -1,
                'post_status' => 'publish',
                'product_cat' => 'pbs',
                'order' => 'desc',
                'orderby' => 'date'
            );

            $brand_product_list = new WP_Query( $brand_product_args);
            while($brand_product_list->have_posts()) : $brand_product_list->the_post(); 
            $product_data = wc_get_product( $post->ID ); 
            endwhile; wp_reset_query();
            if(!empty($product_list))
            {
                $data['status']= true;
                $data['product']= $product_data;
            }
            else
            {
                $data['status']= false;
                $data['product']= array();
            }
            echo json_encode($data);
?>

答案 1 :(得分:0)

require_once('../wp-load.php');   
global $woocommerce;
global $product;
$brand_product_args = array(
                'post_type' => 'product',
                'posts_per_page' => -1,
                'post_status' => 'publish',
                'pwb-brand' => 'pbs',

                'order' => 'desc',
                'orderby' => 'date',
            );

            $brand_product_list = new WP_Query( $brand_product_args);

            while($brand_product_list->have_posts()) : $brand_product_list->the_post(); 
            $product_data = wc_get_product( $post->ID ); 

            endwhile; wp_reset_query();

            if(!empty($product_data))
            {
                $data['status']= true;
                $data['product']= $product_data;
            }
            else
            {
                $data['status']= false;
                $data['product']= array();
            }
    echo'<pre>'; print_r($data);exit;

    echo json_encode($data);