Aller au contenu
themeforge
FR
Commencer gratuitement
Menu
  1. Accueil
  2. Recettes de sections
  3. Catalogue de produits
Recette 4 étapes

Un catalogue de produits : tri, cartes et prix

La page boutique de WooCommerce dans votre design : en haut, un titre et quelques lignes ; en dessous, le tri et les cartes de produits avec leurs prix. Les nouveaux produits apparaissent tout seuls dans le catalogue.

Ce que vous obtenez

Balisage archive-product.html
<body wp-fields-group="Shop">
<header class="shop-hero">
  <h1 wp="post-title">Beans</h1>
  <p class="shop-hero__lead" fld-area="Shop lead">Roasted on Mondays, shipped on Tuesdays.</p>
</header>
<form class="sort" wp="sort">
  <select class="sort__select" wp="orderby">
    <option value="menu_order">Default</option>
    <option value="price">Price: low to high</option>
  </select>
</form>
<div class="beans" wp="products">
  <div class="bean-card">
    <a href="#" wp="post-link"><img src="images/bean.jpg" alt="" wp="post-image"></a>
    <h3><a href="#" wp="post-title-link">Ethiopia Yirgacheffe</a></h3>
    <div class="bean-card__prices">
      <span wp="product-price">$14.00</span>
      <span wp="product-price-sale">$12.00</span>
      <span class="is--old" wp="product-price-regular">$14.00</span>
    </div>
  </div>
</div>
<div class="beans__empty" wp="no-results">No beans match.</div>
<div class="pagination" wp-paginate="mid_size=1"></div>
</body>
Dans l’administration Pages → Beans
Pages → Beans
  • Title: Beans
  • WooCommerce → Settings → Products → Shop page: Beans
Shop
Shop lead Roasted on Mondays, shipped on Tuesdays.
Products
  • Ethiopia Yirgacheffe — $14.00
  • Colombia Huila — $13.00
  • Brazil Cerrado — $11.00
  • House blend “Warm” — $12.00
Sur le site la page boutique
Beans

Roasted on Mondays, shipped on Tuesdays.

Price: low to high
Brazil Cerrado $11.00
House blend “Warm” $12.00
Colombia Huila $13.00
1 2 →

Un acheteur a choisi « Price: low to high » : les cartes se sont réordonnées.

Étape par étape

  1. Titre et texte d’introduction

    wp="post-title" et fld-area au-dessus des cartes lisent la page boutique, celle qui est choisie dans WooCommerce → Réglages → Produits. Le client la modifie comme une page ordinaire.

    <h1 wp="post-title">Beans</h1>
    <p class="shop-hero__lead" fld-area="Shop lead">Roasted on Mondays, shipped on Tuesdays.</p>
  2. Le tri

    <form wp="sort"> avec un <select wp="orderby"> à l’intérieur. Les valeurs des options sont les modes de tri de WooCommerce : menu_order, price, price-desc, date, popularity, rating.

    <form class="sort" wp="sort">
      <select class="sort__select" wp="orderby">
        <option value="menu_order">Default</option>
        <option value="price">Price: low to high</option>
      </select>
    </form>
  3. Les cartes de produits

    wp="products" sur la grille ; la première carte sert de modèle. À l’intérieur : le lien, l’image, le nom et trois blocs de prix, dont le thème masque lui-même ceux qui ne s’appliquent pas. À côté, wp="no-results".

    <div class="beans" wp="products">
      <div class="bean-card">
        <a href="#" wp="post-link"><img src="images/bean.jpg" alt="" wp="post-image"></a>
        <h3><a href="#" wp="post-title-link">Ethiopia Yirgacheffe</a></h3>
        <div class="bean-card__prices">
          <span wp="product-price">$14.00</span>
          <span wp="product-price-sale">$12.00</span>
          <span class="is--old" wp="product-price-regular">$14.00</span>
        </div>
      </div>
    </div>
    <div class="beans__empty" wp="no-results">No beans match.</div>
  4. Les numéros de page

    wp-paginate sur un bloc vide placé après la grille.

    <div class="pagination" wp-paginate="mid_size=1"></div>

À retenir

  • Nécessite WooCommerce.
  • Sans fichier taxonomy-product-cat.html à part, les catégories de produits s’ouvrent avec ce même modèle, et wp="products" affiche les produits de la catégorie ouverte.
  • Pour des produits sur une autre page, comme la page d’accueil : wp-product-query.

Erreurs fréquentes

Le journal de génération est l’onglet « Journaux » de votre projet sur themeforge.pro ; la vérification gratuite du balisage affiche les mêmes remarques.

À éviter
<div class="beans" wp-query="'post_type'=>'product','posts_per_page'=>12">
  <div class="bean-card">
    <h3 wp="post-title">Ethiopia Yirgacheffe</h3>
  </div>
</div>

wp-query au lieu de wp="products" affiche sa propre sélection : le tri et les catégories de produits n’ont aucun effet sur elle. Le journal ne signale rien.

Correct
<div class="beans" wp="products">
  <div class="bean-card">
    <h3 wp="post-title">Ethiopia Yirgacheffe</h3>
  </div>
</div>

wp="products" affiche les produits que WooCommerce a retenus pour cette page.

À éviter
<select class="sort__select" wp="orderby">
  <option value="price">Price: low to high</option>
</select>

Une liste de tri sans son formulaire : la génération signale l’attribut dans le journal, et il ne fait rien.

Correct
<form class="sort" wp="sort">
  <select class="sort__select" wp="orderby">
    <option value="price">Price: low to high</option>
  </select>
</form>

La liste à l’intérieur de <form wp="sort">.

Attributs de cette recette

Prêt quand vous l’êtes

Découvrez l’administration WordPress de votre site avant de payer.