Comment ajouter des attributs de produit WooCommerce avec des variantes : 2 méthodes
Publié: 2021-05-25Voulez-vous créer des attributs de produit avec différentes variantes ? Vous êtes arrivé au bon endroit. Dans ce guide, nous vous montrerons comment ajouter des attributs de produit WooCommerce avec des variantes .
Que sont les attributs WooCommerce ?
Dans WooCommerce, vous pouvez ajouter des informations à vos produits via des attributs . Ces attributs dépendent du produit. Par exemple, les attributs courants des vêtements sont la taille et la couleur, tandis que pour un ordinateur portable, il peut s'agir de la taille de l'écran, de la RAM et de la capacité de stockage.
Ce qui est intéressant avec les attributs, c'est qu'ils sont globaux. Au lieu de les appliquer à chaque produit, vous les créez simplement et les ajoutez à différents produits.
Les attributs sont essentiels pour :
- Produits variables : Avant de créer des produits variables, vous devez leur définir des attributs. Cela vous permet d'ajouter des variantes du produit.
- Filtrage des produits : Une méthode courante de filtrage est basée sur les attributs. Par exemple, un utilisateur peut rechercher un ordinateur portable à écran de 15 pouces.
De plus, vous pouvez également créer des attributs de produit par défaut. Pour plus d'informations à ce sujet, consultez ce guide complet.
Maintenant que nous avons une meilleure compréhension des attributs, voyons comment ajouter des attributs de produit avec des variations dans WooCommerce.
Comment ajouter des attributs de produit WooCommerce avec des variantes
Il existe deux façons principales d'ajouter des attributs de produit avec des variations dans WooCommerce :
- Depuis le tableau de bord WooCommerce
- Par programmation
Jetons un coup d'œil aux deux options.
1) Créez des attributs de produit avec des variations à partir du tableau de bord WooCommerce
Le moyen le plus simple d'ajouter un attribut dans WooCommerce est de la section Attributs . Pour cela, dans votre tableau de bord, rendez-vous dans Produits > Attributs. Là, vous devrez choisir un nom et un slug et cliquer sur le bouton « Ajouter un attribut » pour créer un nouvel attribut de produit.
Comme mentionné précédemment, les attributs sont globaux, donc le nouvel attribut sera disponible pour tous les produits de votre magasin.
Après avoir ajouté l'attribut produit, vous devez ajouter des termes qui deviendront des variantes de certains produits.
Par exemple, si l'attribut est la taille de l'écran, les différentes tailles (13 pouces, 15 pouces, 17 pouces) seront les termes.
De cette façon, vous pouvez combiner les différents attributs de chaque produit et créer différentes variantes. Par exemple, vous pouvez obtenir un ordinateur portable rouge de 13 pouces, un ordinateur portable bleu de 15 pouces, etc.
Comme vous pouvez le constater, l'ajout d'attributs et de variantes à partir du tableau de bord WooCommerce est assez simple. Cependant, cela peut prendre du temps si vous devez créer de nombreuses variantes. Pour créer des attributs avec des variations en masse et gérer un grand nombre d'attributs, vous pouvez utiliser un peu de codage.
Voyons comment ajouter des attributs de produit avec des variations dans WooCommerce par programme .
2. Comment créer des attributs de produit avec des variantes par programmation
Si vous avez des compétences en codage, vous pouvez ajouter des attributs de produit et leurs variantes par programmation. C'est une excellente option si vous souhaitez gagner du temps lors de la création d'attributs, car vous pouvez les ajouter en masse.
REMARQUE : Comme nous allons modifier certains fichiers de base, avant de commencer, nous vous recommandons :
- Créez une sauvegarde complète de votre site afin de pouvoir le restaurer en cas de problème
- Créer un thème enfant : Vous pouvez installer n'importe lequel de ces plugins ou consulter ce guide pour en créer un. De cette façon, vous ne perdrez pas vos personnalisations lorsque vous mettrez à jour votre thème vers une nouvelle version.
Notez que vous devez insérer votre code personnalisé dans le fichier functions.php de votre thème enfant.
Après avoir sauvegardé votre site et créé votre thème enfant, dans votre tableau de bord WordPress, accédez à Apparence > Personnaliser et recherchez le fichier functions.php dans la colonne de droite. Ensuite, collez le code suivant à la fin du fichier.
Script PHP complet
Ceci est le script complet, dans la section suivante, nous le diviserons en morceaux et expliquerons ce que fait chaque partie.
add_action('admin_init', 'QuadLayers_add_product_attributes'); fonction QuadLayers_add_product_attributes(){ $atts=tableau( 'taille'=>tableau('XL','Petit'), 'couleur'=>tableau('marron','gris','jaune'), ); foreach ($atts as $key => $values) { nouveau add_attribute($key,$values); } } classe add_attribute{ /* * Enregistrez une classe globale d'attributs de produits woocommerce. * * @param str $nam | nom de l'attribut * @param arr $vals | panoplie de variantes * */ fonction publique __construct($nam,$vals){ $attrs = tableau(); $attributs = wc_get_attribute_taxonomies(); foreach ($attributs as $key => $value) { array_push($attrs,$attributes[$key]->attribute_name); } if ( ! in_array( $nam, $attrs ) ) { $args = tableau( 'identifiant' => '', 'limace' => $nom, 'nom' => __( $nom, 'woocommerce' ), 'type' => 'sélectionner', 'orderby' => 'menu_order', 'has_archives' => faux, 'limite' => 1, 'est_en_stock' => 1 ); return wc_create_attribute( $args ); } $this->add_var($nam,$vals); } fonction publique add_var($nam,$vals ){ $taxonomie = 'pa_'.$nam; $term_slug = sanitize_title($nam); // Vérifie si le terme existe et si ce n'est pas le cas, crée-le (et récupère l'ID du terme). pour ($ff=0; $ff term_id; } } } }
Il convient de noter que ce script ne supprimera aucun attribut existant, il en ajoutera seulement de nouveaux. Et si les attributs que vous essayez d'ajouter sont déjà là, le script ne fera rien.
De plus, notez que pour cet exemple, nous ajoutons des attributs et des termes. Vous devez modifier le tableau ci-dessous et créer vos propres attributs.
fonction QuadLayers_add_product_attributes(){ $atts=tableau( 'new-attribute'=>array('à côté','à côté','long','aucun','court'), );
Après cela, dirigez-vous vers Produits> Attributs dans votre tableau de bord d'administration. Si tout s'est bien passé, vous verrez les attributs et les termes que vous venez d'ajouter avec le script PHP.
Si vous ne voyez pas les variations, rechargez simplement la page pour qu'elles puissent se remplir.
De plus, les attributs seront également disponibles pour configurer des variantes de produits sur la page de l'éditeur de produits :
Et c'est tout! Maintenant, vous pouvez simplement modifier le script PHP et ajouter vos propres attributs et variantes de produit WooCommerce. Vous pouvez même le mettre à jour dynamiquement en appliquant une logique conditionnelle.
Comment fonctionne le script ?
Jusqu'à présent, nous vous avons montré un script pour ajouter des attributs de produit WooCommerce avec des variantes à votre boutique. Maintenant, décomposons-le, afin que vous puissiez mieux comprendre comment cela fonctionne et le personnaliser.
Les principales sections du script sont :
Le crochet
add_action('admin_init', 'QuadLayers_add_product_attributes'); fonction QuadLayers_add_product_attributes(){ $atts=tableau( 'taille'=>tableau('XL','Petit'), 'couleur'=>tableau('marron','gris','jaune'), ); foreach ($atts as $key => $values) { nouveau add_attribute($key,$values); } }
Nous utilisons le admin_init()
pour lancer le code. Vous pouvez utiliser plusieurs autres hooks ici mais dans notre cas, nous avons apprécié les performances du script utilisant celui-ci.
Dans la fonction hookée, nous définissons nos valeurs d'attributs et leurs variations dans un seul tableau multidimensionnel. La boucle foreach()
créera un attribut pour chacun des éléments du tableau principal.
A l'intérieur de la boucle, l'attribut est créé par notre classe add_attribute();
.
La classe
Nous avons créé une classe OOP qui est responsable de la création de l'attribut et de l'ajout de quelques variantes. Ceci est fait en une seule fois chaque fois que la classe est instanciée, en utilisant le new add_attribute()
dans la section ci-dessus.
classe add_attribute{ fonction publique __construct($nam,$vals){ $attrs = tableau(); $attributs = wc_get_attribute_taxonomies(); foreach ($attributs as $key => $value) { array_push($attrs,$attributes[$key]->attribute_name); } if ( ! in_array( $nam, $attrs ) ) { $args = tableau( 'identifiant' => '', 'limace' => $nom, 'nom' => __( $nom, 'woocommerce' ), 'type' => 'sélectionner', 'orderby' => 'menu_order', 'has_archives' => faux, 'limite' => 1, 'est_en_stock' => 1 ); return wc_create_attribute( $args ); } $this->add_var($nam,$vals); }
La première fonction est une construct()
et elle crée l'attribut à l'aide de la wc_create_attribute()
WooCommerce, tout en appelant également la deuxième fonction : add_var()
fonction publique add_var($nam,$vals ){ $taxonomie = 'pa_'.$nam; $term_slug = sanitize_title($nam); // Vérifie si le terme existe et si ce n'est pas le cas, crée-le (et récupère l'ID du terme). for ($ff=0; $ff < count($vals) ; $ff++) { if( ! term_exists( $vals[
$ff]
, $taxonomy ) ){ $term_data = wp_insert_term($vals[
$ff]
, $taxonomy ); $term_id = $term_data['term_id'] ; } else { $term_id = get_term_by( 'nom', $vals[
$ff]
, $taxonomy )->term_id ; } } }
La deuxième fonction add_var()
ajoutera toutes les variations incluses dans le tableau d'origine pour l'attribut qui est également passé par les fonctions.
Conclusion
En résumé, les attributs de produit vous permettent de créer des produits variables et aident les utilisateurs à filtrer les produits en fonction de certaines fonctionnalités.
Dans ce guide, nous avons vu deux manières différentes d'ajouter des attributs de produit avec des variantes dans WooCommerce :
- Depuis le tableau de bord d'administration
- Par programmation
La création d'attributs à partir du tableau de bord WooCommerce est facile. Cependant, cela peut prendre du temps si vous devez ajouter de nombreux attributs pour plusieurs produits.
Alternativement, si vous avez des compétences en codage, vous pouvez les créer par programmation. Il s'agit d'une méthode plus avancée qui vous permet d'ajouter des attributs de produit en masse. Le script que nous avons utilisé dans cet article a été entièrement testé et fonctionne, alors n'hésitez pas à le prendre comme base et à le personnaliser. Cependant, gardez à l'esprit qu'il est conçu pour être utilisé sur un seul attribut de téléchargement, nous vous déconseillons de le déployer en production de façon permanente.
Si vous obtenez une erreur lorsque vous essayez d'exécuter le script, ne vous inquiétez pas. Cela se produit généralement parce que vous êtes sur la page de liste des attributs. La bonne façon de mettre à jour le script consiste à recharger la page de lien permanent du tableau de bord d'administration de WordPress.
Pour plus d'informations sur la façon d'ajouter correctement des produits WooCommerce à la fois par programmation et à partir du tableau de bord d'administration, consultez ce guide.
Avez-vous créé des attributs de produit dans votre boutique ? Quelle méthode as-tu utilisé ? Faites-nous savoir dans les commentaires ci-dessous!