Cómo desactivar el clic derecho en Shopify (y sus límites)
¿Puedes desactivar el clic derecho en Shopify?
Sí. Puedes añadir un script corto a tu tema de Shopify que cancele el menú del clic derecho, la copia y el arrastre de imágenes, o usar una app que haga lo mismo sin tocar código. De cualquier forma, solo ralentiza la copia casual: las capturas de pantalla, las cámaras de los teléfonos y cualquiera que lea los datos públicos de tu producto siguen pasando.
Nota: Los ajustes, etiquetas y comportamiento de los temas de Shopify de esta página se comprobaron contra la documentación de Shopify el 26 de septiembre de 2026.
El administrador de Shopify no tiene ajuste para esto, así que la elección está entre unas líneas de código de tema y una app. El código no cuesta nada pero vive en los archivos de un solo tema. Una app es más fácil de desactivar y permanece cuando actualizas tu tema, pero añade su propio script a cada página. Ambas dependen de que el JavaScript se ejecute en el navegador del comprador, así que ambas comparten los límites descritos en lo que la protección de clic derecho no puede detener.
¿Cómo lo hago con código?
Pega el script de abajo en layout/theme.liquid. Shopify exige ese archivo en cada tema y lo usa para el marcado repetido entre tipos de página, así que un solo pegado cubre tu escaparate (documentación de layouts de Shopify).
<script>
(function () {
// Los campos de formulario siguen funcionando: los compradores pueden hacer clic derecho para pegar o revisar la ortografía.
function inField(target) {
return target instanceof Element && target.closest('input, textarea') !== null;
}
// Cancela el menú del clic derecho (y la tecla de menú del teclado) fuera de los campos de formulario.
document.addEventListener('contextmenu', function (event) {
if (!inField(event.target)) event.preventDefault();
});
// Impide que se copie el texto de la página. El texto escrito en un campo aún se puede copiar.
document.addEventListener('copy', function (event) {
if (!inField(event.target)) event.preventDefault();
});
// Impide que las imágenes se arrastren fuera de la página.
document.addEventListener('dragstart', function (event) {
if (event.target instanceof HTMLImageElement) event.preventDefault();
});
})();
</script>
Añade el script a tu tema
- En tu administrador de Shopify, ve a Online Store.
- Haz una copia de seguridad primero, como recomienda Shopify: haz clic en ⋯ junto a tu tema actual, luego en Duplicate. La copia aparece en tu página Themes.
- En tu tema actual, haz clic en ⋯, luego en Edit code. Se abre el editor de código.
- En la carpeta layout, abre
theme.liquid. - Busca la etiqueta de cierre
</body>cerca del final del archivo y pega el script en la línea justo encima. - Haz clic en Save.
- Abre tu tienda en una ventana privada y haz clic derecho en una imagen de producto. No aparece ningún menú. Haz clic derecho dentro de un campo de búsqueda o correo: el menú sigue funcionando ahí.
Qué hace cada parte
contextmenucancela el menú del navegador que se abre con un clic derecho o con la tecla de menú del teclado, que es donde viven Save image as y Copy. Los campos de formulario conservan el suyo.copyimpide que el texto seleccionado de la página llegue al portapapeles, ya sea que el comprador use el teclado o el menú Edit del navegador.dragstartimpide que una foto de producto se arrastre al escritorio.
El script deja la selección de texto intacta a propósito. La gente selecciona texto para traducirlo, buscar una palabra o que se lo lean en voz alta, y bloquear la selección rompe las tres cosas.
Si solo te preocupan las fotos, hazlo más suave: en el manejador contextmenu, sustituye !inField(event.target) por event.target instanceof HTMLImageElement, y elimina el manejador copy. El texto y los enlaces se comportan entonces con normalidad, y solo las imágenes pierden su menú.
Importante: Prueba cualquier botón de “copiar código de descuento” en tu tienda después de guardar. Algunos se construyen sobre el comando de copia del navegador, que este script ahora cancela.
Consérvalo a través de las actualizaciones de tema
Cuando actualizas tu tema a una versión nueva, Shopify traslada tus ediciones de código solo si no entran en conflicto con la actualización. Si faltan, las copias tú mismo en la versión nueva, y Shopify aconseja guardar una copia del código personalizado antes de cualquier actualización (actualizar temas). Si cambias a un tema distinto, pega el script en ese tema también. Para quitarlo, elimina las líneas y haz clic en Save.
¿Cómo lo hago con una app?
Instala una app de protección de contenido y activa solo los comportamientos que necesitas. Una app que carga mediante una incrustación de app de tema no necesita nada pegado, y Shopify traslada los ajustes de incrustación de app cuando actualizas tu tema.
X Shield, que nosotros creamos, tiene un interruptor separado para cada comportamiento, todos incluidos en su plan Free (los planes de X Shield). Cada protección empieza apagada, y nada se ejecuta hasta que su incrustación de app está activa:
- Instala X Shield y ábrelo una vez.
- En Resumen, haz clic en Habilitar en tema. Se abre tu editor de temas con la incrustación de app de X Shield activada. Haz clic en Save.
- De vuelta en Resumen, bajo Contenido y medios, activa Clic derecho en medios. Un aviso dice Función activada. Esta es la opción más suave: las imágenes no se pueden guardar con un clic derecho, y el menú sigue funcionando en texto y enlaces.
- Activa cualquier otra cosa de la tabla de abajo solo si la necesitas.
- Para cambiar u ocultar el pequeño mensaje que ven los visitantes cuando se rechaza una acción, ve a Página de bloqueo → Alertas de protección.
- Comprueba el resultado en una ventana privada.
| Interruptor | Qué detiene | Qué le cuesta a tus visitantes |
|---|---|---|
| Clic derecho en medios | Guardar imágenes y vídeos con un clic derecho | Poco: el menú sigue funcionando en todo lo demás |
| Protección de medios | Arrastrar o descargar imágenes y vídeos | Puede impedir que funcionen el zoom de imagen y los controles de vídeo en algunos temas |
| Protección de clic derecho | El menú del navegador en cualquier parte de la página | Abrir enlaces en una pestaña nueva, traducir, revisar ortografía |
| Protección de copia | Copiar texto seleccionado | Copiar un número de pedido, tu dirección o un código de descuento |
| Protección de corte | Cortar texto seleccionado | Editar texto en tus propios formularios |
| Protección de selección de texto | Seleccionar texto en absoluto | Traducción y ayudas de lectura |
| Protección de pegado | Pegar en formularios y campos | Pegar una dirección o correo en tus propios formularios: déjalo apagado |
| Protección de atajos de teclado (bajo Herramientas del navegador) | Atajos que abren herramientas de desarrollador y ver código fuente | Atajos de buscar, imprimir y copiar, para cada visitante |
Para lo que hace cada interruptor en detalle, consulta cómo desactivar el clic derecho con X Shield. Como el fragmento de código, estos interruptores necesitan JavaScript, así que los límites de abajo también se les aplican. La app también añade su propio script a cada página, así que revisa tus puntuaciones de velocidad después de instalarla.
Consejo: Si copiar es parte de un problema mayor de scraping, X Shield, un bloqueador gratuito de países y bots para Shopify, también bloquea países, direcciones IP y bots desde el mismo administrador.
¿Qué no puede detener la protección de clic derecho?
Cualquier cosa que no pase por el propio menú o portapapeles de la página. Trátala como una fricción para los visitantes casuales, no como una protección total contra copias:
- Capturas de pantalla y cámaras de teléfono. Una página web no puede impedir ninguna de las dos de forma fiable.
- Las propias herramientas del navegador. Ver código fuente, Save page as y las herramientas de desarrollador se abren todas desde el menú del navegador, al que un script de página no puede acceder. Desactivar JavaScript elimina la protección por completo.
- Usuarios de Firefox que mantienen pulsado Shift. En Firefox, Shift más clic derecho abre el menú sin disparar el evento que el script cancela (MDN: evento contextmenu).
- iPhones y iPads. Safari en iOS no dispara el evento de clic derecho en absoluto (los datos de compatibilidad de MDN lo listan como no admitido), así que su menú de pulsación larga no se ve afectado por este script.
- Tus archivos de imagen. Cada foto de producto tiene una dirección pública que está en el código fuente de tu página.
- Scrapers y herramientas espía. Solicitan tu catálogo como datos, por ejemplo desde el JSON de productos de Shopify, y nunca ejecutan tu script. Consulta qué pueden ver las herramientas espía de Shopify.
Cuando alguien copia tus fotos o descripciones a otra tienda de Shopify, el remedio que funciona es una queja de derechos de autor. Shopify responde a las reclamaciones de infracción de derechos de autor mediante procedimientos DMCA y recibe los avisos a través de un formulario en línea (reportar una infracción de derechos de autor). Tu propia fotografía, con los originales guardados, hace que esa reclamación sea fácil de probar.
¿Perjudica el SEO o la accesibilidad?
Al SEO no. Los buscadores leen tu HTML y nunca hacen clic derecho ni copian, así que ni el script ni una app cambian lo que se rastrea o indexa, y tus fotos de producto pueden seguir apareciendo en la búsqueda de imágenes. La accesibilidad es el coste real, y recae en tus clientes.
- Usuarios de teclado. La tecla de menú del teclado dispara el mismo evento que un clic derecho, así que bloquear uno bloquea ambos.
- Herramientas cotidianas. La gente usa el menú del clic derecho para abrir enlaces en pestañas nuevas, traducir una página, revisar la ortografía y buscar palabras.
- Copiar. Los compradores copian texto en herramientas de traducción y lectura, y copian datos que necesitan: un número de pedido, tu dirección, un código de descuento.
- Seleccionar. Algunos lectores resaltan el texto mientras avanzan. Bloquear la selección se lo quita, por eso el fragmento de arriba la deja intacta.
- Pegar. Bloquear pegar impide que la gente pegue una dirección o un correo en tus formularios. No protege nada, porque pegar no copia nada de tu tienda.
Si proteges contenido, protege imágenes en lugar de texto: bloquea el menú solo en las imágenes, deja intactos la copia y la selección, y nunca bloquees pegar.