Passer au contenu principal
Toutes les collectionsAvancé
Masquer les modes de paiement par balise de produit
Masquer les modes de paiement par balise de produit

Désactiver ou activer le ramassage, la livraison ou l'expédition pour certains groupes de produits en fonction de la balise du produit

Sandy Jolin avatar
Écrit par Sandy Jolin
Mis à jour il y a plus de 5 mois

À l'aide des balises de produits, vous pouvez masquer les modes de paiement en ajoutant un extrait de code.

Par exemple, si vous avez certains produits qui ne sont disponibles qu'en ramassage et que vous souhaitez masquer les autres modes tels que la livraison et/ou l'expédition.

Si vous souhaitez montrer tous les modes à vos clients et afficher un message d'erreur uniquement lorsqu'elles ne sont pas disponibles, vous pouvez utiliser notre fonctionnalité native d'Activation conditionnelle.

Apprenez-en davantage sur les balises et sur la manière de les ajouter à vos produits dans l'article Shopify Ajouter des balises.

Veuillez nous contacter à [email protected], nous serons heureux de mettre cela en œuvre pour vous. Ne continuez que si vous êtes à l’aise avec la modification du code vous-même.


Ajouter un extrait de code

Ces étapes s'appliquent uniquement au widget Zapiet - Ramassage + Livraison version 1 ou 2. Quelle version du widget est-ce que j'utilise ?

Si vous utilisez une ancienne version, veuillez nous contacter par chat en direct et nous serons heureux de mettre à jour le widget vers la version la plus récente pour vous !

Vous devrez ajouter le code dans Zapiet - Ramassage + Livraison > Paramètres > Développeurs, sous Scripts personnalisés.

function hasTag(tag) {
var products = ZapietWidgetConfig.products;
for (var i = 0; i < products.length; i++) {
var tags = products[i].tags;
for (var j = 0; j < tags.length; j++) {
if (tags[j] == tag) {
return true;
}
}
}
return false;
}
if (hasTag("Livraison exclusive")) {
Zapiet.show("delivery");
Zapiet.hide(["shipping", "pickup"]);
}
else if (hasTag("Ramassage exclusif")) {
Zapiet.show("pickup");
Zapiet.hide(["shipping", "delivery"]);
}

La seconde moitié de ce code doit être modifiée pour répondre à vos besoins : elle comporte deux parties, lorsque vous devez utiliser deux balises différentes.

La première partie affichera uniquement la livraison et masquera l'expédition et le ramassage des articles balisés « Livraison exclusive ».

Pour modifier le code :

  • Remplacez « Livraison exclusive » par la balise que vous avez créée

    • Les balises sont sensibles aux majuscules et minuscules, alors assurez-vous que la valeur correspond exactement à la balise.

  • Remplacez "delivery" par le mode que vous souhaitez afficher

  • Remplacez (["shipping", "pickup"]) par les modes que vous souhaitez masquer

if (hasTag("Livraison exclusive")) {
Zapiet.show("delivery");
Zapiet.hide(["shipping", "pickup"]);

La deuxième partie affichera uniquement le ramassage pour les articles portant la balise "Ramassage exclusif" et masquera l'expédition et la livraison. Si vous devez également ajouter plusieurs balises :

  • Remplacez "Ramassage exclusif" par la balise que vous avez créée

    • Les balises sont sensibles aux majuscules et minuscules, alors assurez-vous que la valeur correspond exactement à la balise.

  • Remplacez "pickup" par le mode que vous souhaitez afficher

  • Remplacez (["shipping, "delivery"]) par les modes que vous souhaitez masquer

} else if (hasTag("Ramassage exclusif")) {
Zapiet.show("pickup");
Zapiet.hide(["shipping", "delivery"]);
}

Note

Si vous affichez ou masquez plusieurs modes, il doit s'agir d'un tableau.

  • Si vous utilisez un tableau, utilisez des parenthèses et des crochets

([shipping”, “delivery”])
  • Si vous n'utilisez qu'un seul mode, utilisez uniquement des parenthèses

(“pickup”)

Dépannage

Si les modifications ne sont pas visibles sur la page du panier, assurez-vous que :

  • Les balises ajoutées dans les extraits de code correspondent exactement à la balise de votre produit (elles sont sensibles aux majuscules et aux minuscules).

  • Vous avez ajouté jQuery dans vos fichiers de thème pour la version 2.0 de la boutique en ligne. Sinon, vous pouvez l'ajouter au-dessus du fichier du panier dans vos fichiers de thème :

    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
Avez-vous trouvé la réponse à votre question ?