Désactiver le clic droit sur Shopify (et ses limites)
Peut-on désactiver le clic droit sur Shopify ?
Oui. Vous pouvez ajouter un court script à votre thème Shopify qui annule le menu du clic droit, la copie et le glisser d’images, ou utiliser une app qui fait la même chose sans modifier de code. Dans les deux cas, cela ne fait que ralentir la copie occasionnelle : captures d’écran, appareils photo de téléphone et quiconque lit vos données publiques de produit passent quand même au travers.
Remarque : les réglages, libellés et comportements de thème Shopify sur cette page ont été vérifiés dans la documentation de Shopify le 26 septembre 2026.
L’administration Shopify n’a pas de réglage pour cela, donc le choix se fait entre quelques lignes de code de thème et une app. Le code ne coûte rien mais vit dans les fichiers d’un seul thème. Une app est plus facile à désactiver et reste en place quand vous mettez à jour votre thème, mais elle ajoute son propre script à chaque page. Les deux reposent sur JavaScript exécuté dans le navigateur de l’acheteur, donc les deux partagent les limites décrites dans ce que la protection du clic droit ne peut pas arrêter.
Comment le faire avec du code ?
Collez le script ci-dessous dans layout/theme.liquid. Shopify exige ce fichier dans chaque thème et l’utilise pour la structure répétée entre les types de page, donc un seul collage couvre votre boutique (la documentation de mise en page de Shopify).
<script>
(function () {
// Form fields keep working: shoppers can still right-click to paste or spell-check.
function inField(target) {
return target instanceof Element && target.closest('input, textarea') !== null;
}
// Cancel the right-click menu (and the keyboard's menu key) outside form fields.
document.addEventListener('contextmenu', function (event) {
if (!inField(event.target)) event.preventDefault();
});
// Stop page text being copied. Text typed into a field can still be copied.
document.addEventListener('copy', function (event) {
if (!inField(event.target)) event.preventDefault();
});
// Stop images being dragged out of the page.
document.addEventListener('dragstart', function (event) {
if (event.target instanceof HTMLImageElement) event.preventDefault();
});
})();
</script>
Ajoutez le script à votre thème
- Dans votre administration Shopify, allez dans Online Store.
- Faites d’abord une sauvegarde, comme le recommande Shopify : cliquez sur ⋯ à côté de votre thème actuel, puis Duplicate. La copie apparaît sur votre page Themes.
- Sur votre thème actuel, cliquez sur ⋯, puis Edit code. L’éditeur de code s’ouvre.
- Dans le dossier layout, ouvrez
theme.liquid. - Trouvez la balise fermante
</body>près de la fin du fichier et collez le script sur la ligne juste au-dessus. - Cliquez sur Save.
- Ouvrez votre boutique dans une fenêtre privée et faites un clic droit sur une image de produit. Aucun menu n’apparaît. Faites un clic droit dans un champ de recherche ou d’e-mail : le menu fonctionne encore là.
Ce que fait chaque partie
contextmenuannule le menu du navigateur qui s’ouvre sur un clic droit ou sur la touche menu du clavier, où vivent Save image as et Copy. Les champs de formulaire gardent le leur.copyempêche le texte sélectionné de la page d’atteindre le presse-papiers, que l’acheteur utilise le clavier ou le menu Edit du navigateur.dragstartempêche une photo de produit d’être glissée vers le bureau.
Le script laisse volontairement la sélection de texte tranquille. Les gens sélectionnent du texte pour le traduire, chercher un mot ou le faire lire à voix haute, et bloquer la sélection casserait ces trois usages.
Si vous ne vous souciez que des photos, adoucissez-le : dans le gestionnaire contextmenu, remplacez !inField(event.target) par event.target instanceof HTMLImageElement, et supprimez le gestionnaire copy. Le texte et les liens se comportent alors normalement, et seules les images perdent leur menu.
Important : testez tout bouton « copier le code de réduction » sur votre boutique après l’enregistrement. Certains reposent sur la commande de copie du navigateur, que ce script annule désormais.
Le garder à travers les mises à jour de thème
Quand vous mettez à jour votre thème vers une nouvelle version, Shopify reporte vos modifications de code seulement si elles n’entrent pas en conflit avec la mise à jour. Si elles manquent, vous les recopiez vous-même dans la nouvelle version, et Shopify conseille de sauvegarder une copie du code personnalisé avant toute mise à jour (mise à jour des thèmes). Si vous passez à un thème différent, collez aussi le script dans ce thème. Pour le retirer, supprimez les lignes et cliquez sur Save.
Comment le faire avec une app ?
Installez une app de protection de contenu et n’activez que les comportements dont vous avez besoin. Une app qui se charge via une intégration d’app de thème n’a besoin de rien de collé, et Shopify reporte les réglages d’intégration d’app quand vous mettez à jour votre thème.
X Shield, que nous développons, a un interrupteur séparé pour chaque comportement, tous inclus sur son plan Free (les plans de X Shield). Chaque protection démarre désactivée, et rien ne fonctionne tant que son intégration d’app n’est pas activée :
- Installez X Shield et ouvrez-le une fois.
- Sur Aperçu, cliquez sur Activer dans le thème. Votre éditeur de thème s’ouvre avec l’intégration d’app X Shield activée. Cliquez sur Save.
- De retour sur Aperçu, sous Contenu et médias, activez Clic droit sur les médias. Un message indique Fonctionnalité activée. C’est l’option la plus douce : les images ne peuvent pas être enregistrées par clic droit, et le menu continue de fonctionner sur le texte et les liens.
- N’activez tout le reste du tableau ci-dessous que si vous en avez besoin.
- Pour changer ou masquer le petit message que voient les visiteurs quand une action est refusée, allez dans Page de blocage → Alertes de protection.
- Vérifiez le résultat dans une fenêtre privée.
| Interrupteur | Ce qu’il arrête | Ce que cela coûte à vos visiteurs |
|---|---|---|
| Clic droit sur les médias | Enregistrer des images et vidéos par clic droit | Peu : le menu fonctionne encore partout ailleurs |
| Protection des médias | Glisser ou télécharger des images et vidéos | Peut empêcher le zoom d’image et les contrôles vidéo de fonctionner sur certains thèmes |
| Protection du clic droit | Le menu du navigateur n’importe où sur la page | Ouvrir des liens dans un nouvel onglet, traduire, vérifier l’orthographe |
| Protection contre la copie | Copier du texte sélectionné | Copier un numéro de commande, votre adresse ou un code de réduction |
| Protection contre le couper | Couper du texte sélectionné | Modifier du texte dans vos propres formulaires |
| Protection de la sélection de texte | Sélectionner du texte du tout | Traduction et aides à la lecture |
| Protection contre le collage | Coller dans les formulaires et champs | Coller une adresse ou un e-mail dans vos propres formulaires : laissez-le désactivé |
| Protection des raccourcis clavier (sous Outils du navigateur) | Les raccourcis qui ouvrent les outils de développement et le code source | Rechercher, imprimer et copier via raccourcis, pour chaque visiteur |
Pour ce que fait chaque interrupteur en détail, voir comment désactiver le clic droit avec X Shield. Comme l’extrait de code, ces interrupteurs nécessitent JavaScript, donc les limites ci-dessous s’appliquent aussi à eux. L’app ajoute aussi son propre script à chaque page, alors vérifiez vos scores de vitesse après l’avoir installée.
Astuce : si la copie fait partie d’un problème plus large de scraping, X Shield, un bloqueur gratuit de pays et de bots pour Shopify, bloque aussi les pays, les adresses IP et les bots depuis la même administration.
Que ne peut pas arrêter la protection du clic droit ?
Tout ce qui ne passe pas par le propre menu ou presse-papiers de la page. Traitez-la comme une friction pour les visiteurs occasionnels, pas comme une protection anti-copie :
- Captures d’écran et appareils photo de téléphone. Une page web ne peut pas empêcher ni l’un ni l’autre de façon fiable.
- Les propres outils du navigateur. Afficher le code source, Save page as et les outils de développement s’ouvrent tous depuis le menu du navigateur, que le script d’une page ne peut pas atteindre. Désactiver JavaScript supprime entièrement la protection.
- Les utilisateurs de Firefox qui maintiennent Maj. Dans Firefox, Maj et clic droit ouvre le menu sans déclencher l’événement que le script annule (MDN : événement contextmenu).
- Les iPhone et iPad. Safari sur iOS ne déclenche pas du tout l’événement de clic droit (les données de compatibilité de MDN le listent comme non pris en charge), donc son menu d’appui long n’est pas affecté par ce script.
- Vos fichiers image. Chaque photo de produit a une adresse publique qui se trouve dans le code source de votre page.
- Scrapers et outils espions. Ils demandent votre catalogue comme des données, par exemple depuis le JSON produit de Shopify, et n’exécutent jamais votre script. Voir ce que les outils espions de Shopify peuvent voir.
Quand quelqu’un copie effectivement vos photos ou descriptions sur une autre boutique Shopify, le remède qui fonctionne est une plainte pour violation de droit d’auteur. Shopify répond aux réclamations de violation de droit d’auteur en suivant les procédures DMCA et reçoit les notifications via un formulaire en ligne (signaler une violation de droit d’auteur). Vos propres photos, avec les originaux conservés, rendent cette preuve facile à apporter.
Cela nuit-il au SEO ou à l’accessibilité ?
Pas au SEO. Les moteurs de recherche lisent votre HTML et ne font jamais de clic droit ni de copie, donc ni le script ni une app ne changent ce qui est exploré ou indexé, et vos photos de produit peuvent toujours apparaître dans la recherche d’images. L’accessibilité est le vrai coût, et il retombe sur vos clients.
- Les utilisateurs du clavier. La touche menu du clavier déclenche le même événement qu’un clic droit, donc bloquer l’un bloque les deux.
- Les outils du quotidien. Les gens utilisent le menu du clic droit pour ouvrir des liens dans de nouveaux onglets, traduire une page, vérifier l’orthographe et chercher des mots.
- La copie. Les acheteurs copient du texte dans des outils de traduction et de lecture, et copient des détails dont ils ont besoin : un numéro de commande, votre adresse, un code de réduction.
- La sélection. Certains lecteurs surlignent le texte au fur et à mesure. Bloquer la sélection leur retire cela, c’est pourquoi l’extrait ci-dessus la laisse tranquille.
- Le collage. Bloquer le collage empêche les gens de coller une adresse ou un e-mail dans vos formulaires. Cela ne protège rien, parce que coller ne copie rien depuis votre boutique.
Si vous protégez du contenu, protégez les images plutôt que le texte : bloquez le menu uniquement sur les images, laissez la copie et la sélection tranquilles, et ne bloquez jamais le collage.