如何让类别显示在电子商务中的所有产品

时间:2012-11-13 05:27:14

标签: php wordpress

我这里有代码,但如何设置特定类别

喜欢ID为“1”的“电子”

这是代码

<?php 
// get the product categories
$product_categories = wp_get_object_terms( wpsc_the_product_id(), 'wpsc_product_category', array('fields' => 'ids') );
// arguments
$args = array(
'post_type' => 'wpsc-product',
'post_status' => 'publish',
'posts_per_page' => -1,
'orderby' => 'rand',
'tax_query' => array(
    array(
        'taxonomy' => 'wpsc_product_category',
        'field' => 'id',
        'terms' => $product_categories
    )
)
);
$related_products = new WP_Query( $args );
// loop over query
if ($related_products->have_posts()) :
echo '<ul>';
while ( $related_products->have_posts() ) : $related_products->the_post();
?>
    <li><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>
<?php
endwhile;
echo '</ul>';
endif;
// Reset Post Data
wp_reset_postdata();
?>

它显示该页面上的产品,我需要根据我放入的类别显示产品,以便它与页面产品不同

1 个答案:

答案 0 :(得分:0)

仅从该类别中选择帖子,在循环中使用类似这样的代码:

query_posts(array('category_name' => 'Electronic', 'showposts' => '1'));
if (have_posts()): while (have_posts()) : the_post();
...

<强>已更新 例如:

<?php
query_posts( array( 'category_name' => 'Electronic',
                    'showposts'     => '1' ) );  // Replace '1' with posts quantity per page
echo '<ul>';
if ( have_posts() ): while ( have_posts() ) : the_post();
  ?>

<li><a href="<?php the_permalink(); ?>" title="<?php the_title_attribute(); ?>"><?php the_title(); ?></a></li>

<?php
endwhile;
  echo '</ul>';
endif;
// Reset Post Data
wp_reset_postdata();
?>

我认为最后一个代码可以替换问题的脚本。但不确定,因为无法测试它。

注意:当然,您必须创建类别并为该类别分配帖子,或使用现有类别: wpsc_product_category