2014-10-15 3 views
1

woocommerce에 대한 테마를 개발 중입니다. 범주별로 제품에서 정보를 검색하는 데 도움이 필요합니다 (예 : ) '셔츠'범주의 제품을 3 개의 항목으로 표시하려면 여기에서 코드를 입력하십시오. 기능을 갖춘 제품으로 제품을 보여 테마를 구애하는 $를 교체Woocommerce 특정 범주의 제품 가져 오기

<ul class="featured-products products"> 

       <?php 
       $args = array('post_type' => 'product', 'posts_per_page' => 6, 'meta_query' => array(array('key' => '_visibility','value' => array('catalog', 'visible'),'compare' => 'IN'),array('key' => '_featured','value' => 'yes'))); 
       $i = 0;     
       $loop = new WP_Query($args); 
       while ($loop->have_posts()) : $loop->the_post(); $_product; $i++; 

       if (function_exists('get_product')) { 
        $_product = get_product($loop->post->ID); 
       } else { 
        $_product = new WC_Product($loop->post->ID); 
       } 

       ?> 

         <li class="product <?php if ($i%3==0) echo ' last'; if (($i-1)%3==0) echo ' first'; ?>"> 
          <div class="inner"> 
          <?php woocommerce_show_product_sale_flash($post, $_product); ?> 
          <a href="<?php echo get_permalink($loop->post->ID) ?>" title="<?php echo esc_attr($loop->post->post_title ? $loop->post->post_title : $loop->post->ID); ?>"> 
           <?php if (has_post_thumbnail($loop->post->ID)) echo get_the_post_thumbnail($loop->post->ID, 'shop_catalog'); else echo '<img src="'.woocommerce_placeholder_img_src().'" alt="Placeholder" />'; ?> 
           <h3><?php the_title(); ?></h3> 
           <span class="price"><?php echo $_product->get_price_html(); ?></span> 
          </a> 
          <?php woocommerce_template_loop_add_to_cart($loop->post, $_product); ?> 
          <?php smpl_product_more_details(); ?> 
          </div> 
         </li> 

       <?php endwhile; ?> 

       </ul> 

을 나는이 새로운 해요, 사전

답변

0

에서

감사 (전 카테고리별로 표시 변경 작동하지하려고) args는 다음과 같다. 송시

$args = array(
     'post_type'    => 'product', 
     'post_status'   => 'publish', 
     'tax_query'    => array(
      array(
       'taxonomy'  => 'product_cat', 
       'terms'   => array_map('sanitize_title', explode(',', 'ENTER_CATEGORY')), 
       'field'   => 'slug', 
       'operator'  => $atts['operator'] 
      ) 
     ) 
    ); 

당신은 당신이 표시 할 카테고리 이름으로 ENTER_CATEGORY 단어를 교체해야합니다.

귀하의 요구 사항을 충족하는지 알려주세요.

0
$prod_categories = array(10, 27); 
$product_args = array(
    'numberposts' => $limit, 
    'post_status' => array('publish', 'pending', 'private', 'draft'), 
    'post_type' => array('product', 'product_variation'), 
    'orderby' => 'ID', 
    'suppress_filters' => false, 
    'order' => 'ASC', 
    'offset' => 0 
); 

if (!empty($prod_categories)) { 
    $product_args['tax_query'] = array(
     array(
      'taxonomy' => 'product_cat', 
      'field' => 'id', 
      'terms' => $prod_categories, 
      'operator' => 'IN', 
    )); 
} 

$products = get_posts($product_args); 
관련 문제