categorie produits woocommerce

Comment afficher la vignette d’une catégorie de Woocommerce ?

Pour des raisons de design, certains sites web basés sur le CMS WordPress et le plugin e-commerce Woocommerce veulent afficher la vignette des catégories des produits.

Il est a rappeler que pour associer une vignette à une catégorie de produit, il faut :

  1. Ouvrir le Tableau de bord de WordPress
  2. Dans le menu vertical de gauche, ouvrir le sous menu Catégories du menu Produits
  3. Choisir la catégorie souhaitée et l’ouvrir en mode :édition en cliquant sur Modifier
  4. En bas de la page, cliquer sur le bouton Transférer/Ajouter image pour soit choisir une image existante ou déposer un fichier image
  5. Valider la modification en cliquant sur Mettre à jour




Voici mainenant le code PHP à intégrer dans l’un des fichiers de votre thème pour afficher la liste des catégories des produits avec la vignette correspondante :

<?php // Déterminer des informations des catégories des produits $args = array( 'number' => $number,
		'orderby'    => 'slug',
		'order'      => 'ASC',
		'hide_empty' => $hide_empty,
		'include'    => $ids
	);
	$product_categories = get_terms( 'product_cat', $args );
	// Déterminer le nombre de catégories
	$count = count($product_categories);
	if ( $count > 0 ){ // S'il y a au moins une catégorie
		foreach ( $product_categories as $product_category ) {
			// Déterminer l'identifiant de la vignette d'une catégorie
			$thumbnail_id = get_woocommerce_term_meta( $product_category->term_id, 'thumbnail_id', true );
			// Extraire l'URL de la vignette
			$thumbnail_url = wp_get_attachment_thumb_url( $thumbnail_id );
			// Aficher la vignette et le nom de la catégorie comme un lien vers la page de la catégorie
			echo '
<h2><img src="'.$thumbnail_url.'" /><a href="' . get_term_link( $product_category ) . '"> ' . $product_category->name . '</a></h2>

';
		}
	}
?>