Aller au contenu
Essai gratuit de 15 jours
Français
Ouvrir dans Claude Poser des questions sur cette pageOuvrir dans ChatGPT Poser des questions sur cette page

Liquid personnalisé

Écrivez votre propre extrait Liquid pour décider de l'accès, avec des variables de client, de panier, de produit et de vitrine.

La règle Custom liquid vous permet d’écrire votre propre extrait de code Liquid pour décider si une personne obtient l’accès. C’est la règle la plus flexible de l’application : tout ce que vous pouvez exprimer comme condition Liquid concernant le client, son panier, le produit ou la collection actuels, ou la vitrine elle-même, vous pouvez l’utiliser pour restreindre l’accès à du contenu. C’est aussi la seule règle où une erreur dans l’extrait a de réelles conséquences, comme expliqué plus bas.

Custom liquid est une règle basée sur une action : elle n’a donc pas de bouton If/Unless. À la place, l’application exécute votre extrait pour chaque personne et lit son résultat final. Le résultat doit être exactement true ou false (les espaces autour sont ignorés) : true valide la règle et false la fait échouer. Toute autre sortie, comme true - customer is eligible, n’est pas un résultat valide. Votre extrait a accès au même type de données qu’un thème Shopify sur la personne et la page en cours.

Ouvrez le verrou, cliquez sur l’onglet Unlock rules et choisissez Custom liquid dans la liste déroulante Condition type.

La liste déroulante Condition type avec Custom liquid sélectionné

Sélectionnez Custom liquid dans la liste déroulante Condition type de l’onglet Unlock rules.

Le type de condition de la règle ouvre un éditeur de code Liquid dédié, avec coloration syntaxique, saisie semi-automatique et validation de la syntaxe en temps réel : les erreurs de votre Liquid sont signalées directement dans l’éditeur pendant la saisie, avant même l’enregistrement.

Éditeur de code Custom liquid avec un extrait et un indicateur de validation de la syntaxe

Écriture et validation d’un extrait Liquid dans l’éditeur de code.

L’éditeur propose une bibliothèque de variables à insérer, regroupées selon ce qu’elles décrivent :

Groupe Variables
Client customer, customer.tags, customer.orders_count, customer.total_spent, customer.b2b?
Panier cart.item_count, cart.total_price, cart.items
Produit et collection product.tags, product.vendor, product.metafields, collection.handle
Vitrine request.path, request.page_type, localization.country.iso_code, localization.language.iso_code

Panneau Variables and templates affichant les variables Liquid disponibles, regroupées par catégorie

Parcours des variables disponibles depuis le panneau Variables and templates.

Si vous préférez partir d’un exemple fonctionnel plutôt que d’un éditeur vide, le même panneau comprend des modèles prêts à l’emploi que vous pouvez insérer et ajuster : vérification d’un client connecté, vérification d’un tag client, minimum de quantité ou de total du panier, vérification d’un tag de produit, vérification du pays de la personne, vérification du chemin d’URL, et un modèle prêt à l’emploi Shopify B2B customer qui vérifie directement customer.b2b?.

Panneau de modèles d’exemple avec une liste d’extraits Liquid prêts à l’emploi comme point de départ

Choix d’un modèle de départ, y compris le modèle Shopify B2B prêt à l’emploi.

  1. Ouvrez le verrou à protéger et cliquez sur l’onglet Unlock rules.
  2. Ajoutez une règle d’accès et définissez le type de condition sur Custom liquid.
  3. Écrivez votre extrait directement dans l’éditeur, ou ouvrez Variables and templates pour copier une variable ou partir d’un des modèles prêts à l’emploi.
  4. Assurez-vous que la sortie finale de votre extrait est exactement true pour les personnes qui doivent passer et exactement false pour toutes les autres. N’ajoutez pas de texte explicatif, de HTML ou d’autre contenu autour de la valeur. L’éditeur signale les problèmes de syntaxe de base, mais vous devez tout de même vérifier que la logique correspond à votre intention.
  5. Si vous le souhaitez, définissez une Redirect URL propre à la règle, utilisée uniquement si cette règle précise refuse l’accès.
  6. Enregistrez le verrou.

Exemple : autoriser les clients connectés ayant un tag VIP

Section intitulée « Exemple : autoriser les clients connectés ayant un tag VIP »

Imaginons qu’une page privée ne doive être accessible qu’aux clients connectés dont le compte a le tag vip.

  1. Sélectionnez la page VIP collection preview comme contenu à protéger.

L’onglet Lock setup avec Specific Page comme type de contenu et la page VIP collection preview listée sous Restricted pages.

Choisissez la page à réserver aux clients VIP.

  1. Ajoutez Custom liquid et remplacez l’extrait de départ par :
{% if customer and customer.tags contains 'vip' %}true{% else %}false{% endif %}

L’éditeur confirme Liquid syntax is valid en dessous pendant la saisie.

La condition Custom liquid avec l’extrait du tag VIP dans l’éditeur de condition Liquid et la confirmation Liquid syntax is valid en dessous.

L’éditeur met en évidence le Liquid et valide la syntaxe avant l’enregistrement.

  1. Laissez le champ Redirect URL de la règle vide.
  2. Définissez le Access denied message sur :

This page is available to VIP customers only.

La carte Messages avec le Access denied message défini sur le texte réservé aux clients VIP, et le panneau Preview qui l’affiche.

Custom liquid n’a qu’un seul champ de message, affiché à toute personne que l’extrait rejette.

  1. Cliquez sur Save.

L’extrait renvoie exactement true pour un client connecté ayant le tag vip : la page s’ouvre donc normalement. Il renvoie exactement false pour les visiteurs non connectés et les clients sans ce tag, qui voient alors le message ci-dessus. N’ajoutez pas de texte avant ou après true ou false dans la sortie de l’extrait.

La page VIP collection preview affichant le message configuré réservé aux clients VIP.

Lorsque l’extrait Liquid renvoie false, la personne voit le Access denied message de cet exemple.

Cette page vous a-t-elle été utile ?