Comment masquer le thème de la vitrine de la catégorie WooCommerce

Publié: 2020-10-05

WooCommerce Storefront Masquer la catégorie Dans tout site Web de commerce électronique, la page de la boutique est l'une des pages les plus importantes. Vos clients ne peuvent pas voir physiquement tous les produits que vous vendez. Par conséquent, il est très important de présenter une page de magasin de manière à ce qu'il soit plus facile pour eux de rester sur le site Web et de prendre une décision d'achat.

WooCommerce Storefront Masquer la catégorie

Ce bref tutoriel est spécifiquement destiné à ceux qui ont créé des magasins à l'aide du plugin WooCommerce. Je vais vous montrer comment afficher toutes les catégories de produits sur la page de la boutique à l'aide du personnalisateur WooCommerce et comment masquer l'affichage des catégories WooCommerce sur la page de la boutique.

Le thème Storefront s'intègre parfaitement à WooCommerce. WooCommerce vous permet de décider comment vous souhaitez que vos produits soient affichés sur la page d'accueil du thème Storefront.

Comment afficher les catégories dans le thème Storefront

Lorsque vous vous connectez à votre site WordPress et accédez au tableau de bord en tant qu'utilisateur administrateur, l'utilisation du catalogue de produits sous Apparence > Personnaliser > WooCommerce vous permet d'afficher la page de la boutique WooCommerce de manière unique. Vous pouvez choisir d'afficher uniquement la catégorie, la catégorie avec les produits ou uniquement les produits.

En résumé:

  • Afficher les produits : tous les produits seront répertoriés.
  • Afficher les catégories : Toutes les catégories seront listées
  • Afficher les catégories et les produits : les produits et les catégories seront tous deux répertoriés.

Si vous sélectionnez l'option « Afficher les catégories » sous « Affichage de la page de la boutique » , toutes les catégories de produits seront affichées sur la page de la boutique, comme indiqué ci-dessous : Afficher les catégories

Comment masquer la catégorie WooCommerce de la page d'accueil du thème Storefront

Pour diverses raisons, vous ne souhaitez peut-être pas afficher certaines catégories sur la page d'accueil. Dans cet exemple, je supprimerai la catégorie "Accessoires". Nous pouvons le faire soit en donnant le nom correct à cette catégorie, soit en la cachant de sa liste sur la page d'accueil.

Voici les étapes simples que vous devez suivre :

  1. Connectez-vous à votre site WordPress et accédez au tableau de bord en tant qu'utilisateur administrateur.
  2. Dans le menu Dashboard, cliquez sur Appearance Menu > Theme Editor Menu . Lorsque la page de l' éditeur de thème est ouverte, recherchez le fichier des fonctions du thème où nous ajouterons la fonction qui supprimera la catégorie "Accessoires".
  3. Ajoutez le code suivant au fichier functions.php :
 /**

 * Afficher uniquement les produits de la catégorie sélectionnée.

 */

function get_subcategory_terms( $terms, $taxonomies, $args ) {

            $new_terms = array();

            $hide_category = array( 19 ); // Ids de la catégorie que vous ne souhaitez pas afficher sur la page de la boutique

                         // si une catégorie de produit et sur la page boutique

            if ( in_array( 'product_cat', $taxonomies ) && !is_admin() && is_shop() ) {


                foreach ( $terms as $key => $term ) {


                        if ( ! in_array( $term->term_id, $hide_category ) ) {

                                    $nouveaux_termes[] = $terme ;

                        }

                }

                $terms = $new_terms ;

            }

  retourner $termes ;

}

add_filter( 'get_terms', 'get_subcategory_terms', 10, 3 );
  1. Pour voir le résultat, actualisez la page d'accueil. Dans la capture d'écran ci-dessous, vous pouvez voir que le code a supprimé l' ID de catégorie "Accessoires" = 19. supprimer la catégorie

Comment fonctionne le code

Dans l'extrait de code que j'ai partagé, j'ai utilisé la fonction de rappel get_subcategory_terms() et j'ai initialisé une variable $new_terms avec un tableau vide qui sera utilisé plus tard pour créer un tableau de catégories WooCommerce à afficher sur la page de la boutique.

Après cela, j'ai initialisé la variable $hide_category avec les tableaux d'identifiants de catégorie que je ne souhaite pas afficher sur la page de la boutique. Vous devez ajouter les identifiants de la catégorie que vous souhaitez masquer sur votre page de boutique.

Ensuite, j'ai vérifié si le 'product_cat' est présent dans $taxonomies ou non, et vérifié s'il s'agit de la page d'accueil et de la page de la boutique, puis n'exécute que la partie modification réelle. De plus, j'ai utilisé la fonction is_admin(), nous pouvons vérifier s'il s'agit d'un frontal ou d'un administrateur. J'ai utilisé la fonction is_shop() pour vérifier s'il s'agit d'une page WooCommerce Shop ou non.

Si toutes les conditions sont vraies, j'ai utilisé la boucle foreach pour parcourir les données $terms afin de préparer de nouvelles données de termes dans la variable $new_terms. Cette variable n'aura pas les données de terme de la catégorie WooCommerce que nous voulons masquer sur la page d'accueil. Cela signifie que pour chaque donnée de terme, je vérifie si l'identifiant de terme n'est pas présent dans un tableau $hide_category, puis n'ajoute que le terme dans le tableau $new_terms.

Conclusion

Dans cet article, je vous ai montré comment changer l'affichage de la page de la boutique pour lister les catégories de produits. De plus, je vous ai montré comment masquer une catégorie WooCommerce particulière de l'affichage sur la page d'accueil à l'aide d'un petit morceau de code.

De plus, il peut y avoir d'autres scénarios pour empêcher les produits et les catégories d'être répertoriés sur la page d'accueil. Cela peut être fait en ajoutant un peu plus de code dans l'extrait de code élaboré, vous pouvez répondre à vos besoins.

Articles similaires