Personnaliser un thème Shopify au-delà de l’éditeur
L’éditeur de thème Shopify ne montre que les réglages que le développeur du thème a choisi d’exposer dans le fichier {% schema %} de chaque section. Dès qu’une demande sort de ce périmètre — une mise en page conditionnelle, un comportement propre à une section — il faut modifier le Liquid, le JSON ou le CSS directement, en dehors de l’éditeur visuel.
Comment j’aborde une demande de personnalisation
-
Vérifier si le réglage existe déjà
Avant tout code, je vérifie si l’effet recherché est déjà accessible dans l’éditeur d’un thème récent Online Store 2.0 : beaucoup de demandes se règlent avec un paramètre existant que personne n’avait trouvé.
-
Identifier ce qui bloque réellement
Si rien n’est exposé, je vérifie si la logique est possible en Liquid pur — affichage conditionnel, structure de section, contenu selon un métachamp — ou si elle dépend d’une donnée que Liquid ne peut pas atteindre seul.
-
Modifier le thème en local
Je travaille avec Shopify CLI en local ou via l’intégration GitHub du thème, pas dans l’éditeur en ligne, pour garder un historique et tester avant publication.
-
Distinguer édition de thème et mini-application
Si la demande dépend d’une donnée non disponible côté Liquid — historique de commandes, calcul externe — je le dis avant de chiffrer : ce n’est plus du thème, c’est une application qui interroge l’API Admin.
-
Tester puis publier
Je teste sur un thème dupliqué, jamais sur le thème en ligne, puis je publie une fois validé.
Ce que j’entends régulièrement
- Je ne trouve aucun réglage dans l’éditeur pour faire ce que je veux
- Le thème affiche toujours la même chose, peu importe ce que je change dans les paramètres
- Mon précédent prestataire a modifié le thème directement, je ne sais plus quoi toucher
- Je veux qu’une section s’affiche différemment selon le client connecté
- L’agence qui a fait mon thème dit que ce n’est « pas possible », sans plus d’explication
Pourquoi l’éditeur s’arrête là où il s’arrête
Un thème Shopify Online Store 2.0 est composé de gabarits Liquid, de gabarits JSON qui décrivent les sections et les blocs d’une page, et d’un fichier {% schema %} par section qui déclare les réglages visibles dans l’éditeur. Rien de ce qui n’est pas déclaré dans ce schéma n’apparaît dans l’interface de personnalisation, même si la logique existe techniquement dans le code.
Liquid est un langage de gabarit exécuté dans un environnement isolé : pas d’accès direct à une base de données, pas d’exécution de code serveur arbitraire. C’est pour cette raison que certaines demandes qui paraissent simples — « afficher un contenu différent selon l’historique de commandes du client » — ne se règlent pas par une modification de thème : elles nécessitent une petite application qui interroge l’API Admin et transmet le résultat à la page.
Avant de chiffrer une demande, je détermine donc de quel côté elle se situe : modification de Liquid, de JSON ou de CSS/JS, autonome et limitée au thème ; ou besoin d’une application ou d’une Shopify Function, qui change l’outillage et la portée du travail.
Pages liées
Décrivez votre besoin en 1 minute
Quelques questions ciblées pour que je vous réponde avec une estimation, pas avec un questionnaire de plus.