HUSKY - Product Filter for WooCommerce

Comment afficher différents filtres WooCommerce sur différentes pages

Le shortcode [woof] du filtre HUSKY WooCommerce accepte des attributs qui vous permettent de contrôler quels filtres apparaissent et quels produits ils affichent.

Attributs principaux :

  • tax_only – Afficher uniquement des taxonomies spécifiques (catégories, attributs)
  • by_only – Afficher uniquement des filtres hors taxonomie spécifiques (prix, SKU, stock, etc.)
  • taxonomies – Afficher uniquement des termes de taxonomie spécifiques (utilisé avec le recomptage dynamique)

Exemples de shortcode

Filtrer des taxonomies spécifiques

Afficher uniquement les filtres de catégorie et de marque :

[woof tax_only="product_cat,pa_brand"]

Filtrer des éléments hors taxonomie

Afficher uniquement les filtres de prix, SKU et stock :

[woof by_only="by_price,by_sku,by_instock"]

Combiné : taxonomies + filtres hors taxonomie

Afficher des taxonomies spécifiques ET des filtres hors taxonomie :

[woof tax_only="product_cat,pa_size,pa_color" by_only="by_price,by_instock"]

Utilisation de l'attribut taxonomies (pour le recomptage dynamique)

Afficher uniquement des termes spécifiques de taxonomies spécifiques :

[woof taxonomies="product_cat:35,42,58+pa_brand:nike,adidas"]

Note : L'attribut taxonomies est utilisé lorsque vous avez activé le “recomptage dynamique” ou “masquer les options vides”.

Guide de configuration complet

Étape 1 : Créez vos shortcodes

Créez différents shortcodes [woof] pour chaque page avec les attributs appropriés.

Exemple :

  • Fournisseur A : [woof tax_only="product_cat,pa_size,pa_color" by_only="by_price"]
  • Fournisseur B : [woof taxonomies="product_cat:50+pa_brand:nike,adidas" by_only="by_price"]

Étape 2 : Placez les shortcodes dans les widgets

  1. Allez dans Apparence → Widgets
  2. Ajoutez un widget Texte ou HTML personnalisé à votre barre latérale
  3. Collez votre shortcode dans le widget
  4. Créez des widgets séparés pour chaque shortcode

Étape 3 : Installez un plugin de widget conditionnel

Vous avez besoin d'un plugin pour contrôler la visibilité des widgets en fonction des conditions de page.

Choisissez-en un :

Étape 4 : Définissez les conditions de visibilité

Ajoutez une logique conditionnelle à chaque widget pour contrôler où il apparaît.

Exemples de logique conditionnelle

Afficher le filtre sur une page spécifique

Par slug de page :

is_page('supplier-nike')

Par ID de page :

is_page(123)

Afficher le filtre sur plusieurs pages

is_page(array('supplier-1', 'supplier-2', 'supplier-3'))

Afficher le filtre sur l'archive de catégorie

Par ID de catégorie :

is_product_category(35)

Par slug de catégorie :

is_product_category('electronics')

Afficher le filtre sur une taxonomie personnalisée

is_tax('supplier', 'nike-products')

Exclure des pages spécifiques

Afficher partout SAUF sur la page 123 :

!is_page(123)

Exemple de configuration complet

Scénario : 3 fournisseurs avec des filtres différents

Fournisseur A (Nike) – ID de page : 123

  • Shortcode : [woof tax_only="product_cat,pa_size,pa_color" by_only="by_price"]
  • Condition du widget : is_page(123)
  • Résultat : Affiche toutes les catégories de produits avec les filtres de taille, couleur et prix

Fournisseur B (Adidas) – Slug de page : adidas-products

  • Shortcode : [woof taxonomies="product_cat:40,41,42" by_only="by_instock"]
  • Condition du widget : is_page('adidas-products')
  • Résultat : Affiche uniquement les catégories 40, 41, 42 avec le filtre de stock

Fournisseur C – ID d'archive de catégorie : 50

  • Shortcode : [woof tax_only="product_cat,pa_brand" by_only="by_price,by_sku"]
  • Condition du widget : is_product_category(50)
  • Résultat : Affiche les filtres de catégories, marques, prix et SKU

Comprendre les attributs

tax_only vs taxonomies

Utilisez tax_only lorsque :

  • Vous souhaitez afficher des taxonomies entières (tous les termes)
  • Exemple : tax_only="product_cat,pa_brand" affiche toutes les catégories et toutes les marques

Utilisez taxonomies lorsque :

  • Vous avez activé le “recomptage dynamique” ou “masquer les options vides”
  • Vous souhaitez afficher des termes spécifiques de taxonomies spécifiques
  • Exemple : taxonomies="product_cat:35,42+pa_brand:nike" affiche uniquement les catégories 35 & 42, et uniquement la marque Nike

Valeurs de by_only

Filtres hors taxonomie disponibles pour by_only :

  • by_price – Curseur de plage de prix
  • by_sku – Recherche par SKU
  • by_text – Recherche textuelle
  • by_author – Filtrer par auteur
  • by_onsales – Afficher uniquement les produits en solde
  • by_instock – Afficher uniquement les produits en stock
  • Clés de champ meta (si activées dans les paramètres de WOOF)

Utilisez by_only="none" pour masquer tous les filtres hors taxonomie.

Trouver les IDs et les slugs

IDs de catégorie

  1. Allez dans Produits → Catégories
  2. Survolez le nom de la catégorie
  3. Regardez la barre d'état du navigateur ou l'URL
  4. Repérez tag_ID=35 – le nombre correspond à l'ID de votre catégorie

IDs de page

  1. Allez dans Pages
  2. Survolez le nom de la page
  3. Regardez l'URL : post=123
  4. Le nombre correspond à l'ID de votre page

Slugs d'attribut

  1. Allez dans Produits → Attributs
  2. Les slugs d'attribut commencent par pa_
  3. Exemples : pa_brand, pa_size, pa_color, pa_material

Tester votre configuration

  1. Testez d'abord les shortcodes
    • Placez le shortcode directement sur une page de test
    • Vérifiez que les filtres s'affichent correctement
    • Assurez-vous que le filtrage fonctionne
  2. Testez la visibilité des widgets
    • Visitez chaque page où le filtre doit apparaître
    • Vérifiez que le filtre correct s'affiche
    • Assurez-vous que les autres filtres n'apparaissent pas
  3. Vérifiez qu'un seul filtre par page
    • Plusieurs filtres sur la même page entreront en conflit
    • Utilisez les conditions de widget pour garantir l'exclusivité

Limitation importante

Un seul filtre par page : Un seul filtre WOOF peut être actif sur une page à la fois. Plusieurs filtres entreront en conflit.

Solution : Utilisez la logique conditionnelle des widgets pour vous assurer qu'un seul widget de filtre s'affiche par page.

Conseils

  1. Testez d'abord les shortcodes directement
    • Avant d'ajouter aux widgets, testez les shortcodes sur une page normale
    • Cela garantit que les attributs sont corrects
  2. Utilisez des conditions exclusives
    • Assurez-vous que les conditions des widgets ne se chevauchent pas
    • Un seul filtre doit être visible par page
  3. Conditions négatives
    • Utilisez !is_page(123) pour exclure des pages spécifiques
    • Utile pour les scénarios “afficher partout sauf”
  4. Vérifiez les slugs d'attribut
    • Les slugs d'attribut doivent commencer par pa_
    • Mauvais slug = le filtre n'apparaîtra pas

Documentation complète

Pour la référence complète des attributs du shortcode : https://products-filter.com/shortcode/woof

Dépannage

Le filtre n'apparaît pas

Causes possibles :

  • La condition du widget est fausse pour la page actuelle
  • Les attributs du shortcode sont incorrects
  • Les IDs de catégorie/attribut n'existent pas
  • Plusieurs filtres en conflit

Solution :

  • Vérifiez que l'ID/slug de la page correspond à la condition
  • Vérifiez les IDs de catégorie dans Produits → Catégories
  • Testez d'abord le shortcode sur une page normale
  • Assurez-vous qu'un seul widget de filtre par page

Mauvais produits affichés

Causes possibles :

  • IDs de catégorie incorrects
  • Slugs d'attribut erronés
  • Utilisation du mauvais attribut (tax_only vs taxonomies)

Solution :

  • Vérifiez à nouveau les IDs de catégorie
  • Vérifiez que les slugs d'attribut commencent par pa_
  • Utilisez taxonomies si vous avez activé le recomptage dynamique
  • Testez d'abord avec un shortcode plus simple

Plusieurs filtres affichés

Cause : Les conditions des widgets se chevauchent

Solution :

  • Passez en revue toutes les conditions des widgets
  • Assurez l'exclusivité mutuelle
  • Utilisez des conditions négatives pour séparer

Le filtre apparaît sur les mauvaises pages

Cause : La condition du widget est trop large

Solution :

  • Rendez la condition plus spécifique
  • Utilisez l'ID de page au lieu de la catégorie si nécessaire
  • Testez soigneusement la logique de la condition

Résumé

Pour afficher différents filtres sur différentes pages :

  1. Créez des shortcodes personnalisés [woof] avec les attributs tax_only et/ou by_only
  2. Placez chaque shortcode dans des widgets Texte/HTML séparés
  3. Installez le plugin Widget Logic
  4. Ajoutez une logique conditionnelle à chaque widget (par exemple, is_page(123))
  5. Testez pour vous assurer qu'un seul filtre s'affiche par page

Rappelez-vous : Un seul filtre peut être actif par page. Utilisez les conditions des widgets pour garantir l'exclusivité.