Làm cách nào để hiển thị Sản phẩm cụ thể cho một danh mục với Plugin WooC Commerce? [đóng cửa]


13

Tôi đang sử dụng plugin Wooc Commerce để mua sắm trực tuyến.

Tôi có nhiều loại ví dụ shoes, clothesvà như vậy. Làm thế nào tôi có thể hiển thị các sản phẩm của thể loại cụ thể?

Tôi thấy các vòng lặp sản phẩm như vậy trên trang mẫu , nhưng tôi chỉ muốn hiển thị các sản phẩm của một danh mục cụ thể trong tôi index.php.


Bạn có thể vui lòng cho tôi biết nơi để thêm mã này nếu bạn vui lòng
Alaa M. Jaddou

Câu trả lời:


26

Bạn cần tạo một vòng lặp mới cho điều đó. Đây là mã tôi sử dụng để hiển thị các sản phẩm từ một danh mục cụ thể trên trang chủ:

<ul class="products">
    <?php
        $args = array( 'post_type' => 'product', 'posts_per_page' => 1, 'product_cat' => 'shoes', 'orderby' => 'rand' );
        $loop = new WP_Query( $args );
        while ( $loop->have_posts() ) : $loop->the_post(); global $product; ?>

            <h2>Shoes</h2>

                <li class="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 woocommerce_show_product_sale_flash( $post, $product ); ?>

                        <?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" width="300px" height="300px" />'; ?>

                        <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 ); ?>

                </li>

    <?php endwhile; ?>
    <?php wp_reset_query(); ?>
</ul><!--/.products-->

1
@VanTong Sau đó đánh dấu câu trả lời này là câu trả lời: nhấp vào dấu chọn ở bên trái.
fuxia

Xin chào Dwaser, tôi muốn hỏi thêm. Nếu trong trang lưu trữ, tôi muốn hiển thị tất cả sản phẩm mới. và Khi tôi chọn Danh mục cụ thể Nó sẽ hiển thị sản phẩm của danh mục đó. Ví dụ Tôi có 2 loại A và Loại B, Khi tôi chọn A, nó sẽ hiển thị sản phẩm của A và chọn B, nó sẽ hiển thị sản phẩm của B. Hãy cho tôi biết các vòng lặp. cảm ơn.
Van Tong

tin nhắn show nóng nếu không có sản phẩm?
Muhammad Bilal

@dwaser Xin chào, deos đối số sản phẩm_cat chấp nhận id danh mục int, tức là: 40 thay vì 'giày'? nếu không, làm thế nào để làm cho nó chấp nhận một id thể loại int? cảm ơn
Malloc

1
ngoại trừ tôi, nhưng thêm mã này vào đâu? Tôi là một người mới trong wordpress nhưng tôi có một thời hạn rất gần. @VanTong
Alaa M. Jaddou

1

Có một cách khác:

Bạn có thể chỉ định trang "Cửa hàng" làm trang chủ mặc định. Bây giờ tất cả các sản phẩm sẽ được hiển thị đến trang chủ. Ý tôi là index.php.


-1

Thử đi

<?php
    echo $product->get_categories(
        ', ',
        '<span class="posted_in">' . _n( 'Category:', 'Categories:',
        sizeof( get_the_terms( $post->ID, 'product_cat' ) ),
        'woocommerce' ) . ' ',
        '.</span>'
    );
?>

4
Bạn có thể giải thích về cách thức và lý do tại sao điều này sẽ giải quyết vấn đề của OP không?
Julian Pille
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.