Як відобразити продукт, який відповідає конкретній категорії за допомогою плагіна WooCommerce? [зачинено]


13

Я використовую плагін Woocommerce, щоб робити покупки в Інтернеті.

У мене є, наприклад shoes, багато категорій clothesтощо. Як я можу відображати товари певної категорії?

Я бачу такі петлі продуктів на зразковій сторінці , але я хочу лише показувати продукти певної категорії index.php.


ви можете, будь ласка, скажіть мені, куди додати цей код, якщо вам подобається
Алаа М. Ядду

Відповіді:


26

Для цього потрібно створити новий цикл. Ось код, який я використовую для відображення продуктів із певної категорії на домашній сторінці:

<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 Потім позначте цю відповідь як відповідь: натисніть прапорець ліворуч.
fuxia

Привіт Двесер, я хочу запитати більше. Якщо на сторінці архіву, я хочу показати весь новий продукт. і коли я виберу конкретну категорію, вона відображатиме продукт цієї категорії. Приклад: У мене є 2 категорії Категорія A і категорія B, коли я вибираю A, він відображатиме добуток A, а у пункті B буде відображатися продукт B. Будь ласка, скажіть мені петлі. Спасибі.
Ван Тонг

гаряче шоу повідомлення, якщо немає продуктів?
Мухаммед Білал

@dwaser Привіт, deos аргумент product_cat приймає ідентифікатор категорії int, тобто: 40 замість 'shoes'? якщо ні, то як змусити його прийняти ідентифікатор категорії int? дякую
Маллок

1
вибачте мене, хлопці, але куди додати цей код? Я новачок у wordpress, але у мене дуже близький термін. @VanTong
Alaa M. Jaddou

0

Є ще один спосіб:

Ви можете призначити сторінку "Магазин" як домашню сторінку за замовчуванням. Тепер усі продукти будуть відображатися на домашній сторінці. Я маю на увазі index.php.


-1

Спробуйте це

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

4
Чи можете ви детально розказати, як і чому це вирішило б проблему ОП?
Йоганнес Піл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.