Comment afficher un produit spécifique à une catégorie avec le plugin WooCommerce? [fermé]


13

J'utilise le plugin Woocommerce pour faire des achats en ligne.

J'ai de nombreuses catégories par exemple shoes, clotheset ainsi de suite. Comment afficher les produits d'une catégorie spécifique?

Je vois de telles boucles de produits sur la page d'exemple , mais je veux seulement afficher les produits d'une catégorie spécifique dans mon index.php.


pouvez-vous s'il vous plaît me dire où ajouter ce code si vous le souhaitez
Alaa M. Jaddou

Réponses:


26

Vous devez créer une nouvelle boucle pour cela. Voici le code que j'utilise pour afficher les produits d'une catégorie spécifique sur la page d'accueil:

<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 Puis marquez cette réponse comme réponse: cliquez sur la coche sur le côté gauche.
fuxia

Salut Dwaser, je veux en savoir plus. Si dans la page d'archive, je veux montrer tout nouveau produit. et lorsque je choisis une catégorie spécifique, le produit de cette catégorie s'affiche. Exemple J'ai 2 catégories de catégorie A et catégorie B, lorsque je choisis A, il affichera le produit de A, et choisir B, il affichera le produit de B. Veuillez me dire les boucles. Merci.
Van Tong

hot show message s'il n'y a pas de produits?
Muhammad Bilal

@dwaser Salut, deos l'argument product_cat accepte un identifiant de catégorie int, c'est-à-dire: 40 au lieu de 'chaussures'? sinon, comment faire accepter un identifiant de catégorie int? merci
Malloc

1
excusez-moi les gars, mais où ajouter ce code? je suis un newpie dans wordpress mais j'ai un délai très proche. @VanTong
Alaa M. Jaddou

1

Il existe une autre manière:

Vous pouvez attribuer la page "Boutique" comme page d'accueil par défaut. Maintenant, tous les produits seront affichés sur la page d'accueil. Je veux dire index.php.


-1

Essaye ça

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

4
Pouvez-vous expliquer comment et pourquoi cela résoudrait le problème du PO?
Johannes Pille
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.