Introducción al error de sintaxis en Liquid
Liquid es el lenguaje de plantillas de código abierto utilizado en Shopify para cargar dinámicamente el contenido de las tiendas en línea. Cuando modificas los archivos de tu tema (como theme.liquid, index.liquid o archivos de secciones) y cometes un pequeño error de tipeo, etiquetas mal cerradas o filtros incorrectos, Shopify bloquea la renderización de la página y muestra un molesto mensaje de error de sintaxis en la interfaz del editor.
Causas principales de los errores de Liquid en Shopify
- Etiquetas de control de flujo abiertas que nunca se cierran (por ejemplo, un
{% if %}sin su correspondiente{% endif %}). - Uso de filtros no válidos o mal escritos (como
{{ product.title | bad_filter }}). - Variables mal escritas o nulas que rompen la lógica del bucle
{% for %}. - Incompatibilidad de sintaxis al actualizar temas antiguos a versiones recientes de la API de Liquid.
Método 1: Identificar la línea exacta mediante el editor de código
- Inicia sesión en tu panel de administración de Shopify y ve a Canales de venta > Tienda online > Temas.
- Haz clic en los tres puntos
...junto al tema activo y selecciona Editar código. - Revisa la barra de notificaciones superior o el archivo que editaste recientemente; Shopify suele resaltar en rojo la línea exacta donde se ha producido el fallo de sintaxis.
- Localiza la etiqueta problemática, por ejemplo, un bucle mal cerrado:
{% for product in collection.products %}al que le falte el cierre{% endfor %}.
Método 2: Corregir y validar la sintaxis de las etiquetas
- Asegúrate de que cada apertura tenga su respectivo cierre. Las etiquetas de lógica usan llaves y porcentajes
{% ... %}y las de salida usan doble llave{{ ... }}. - Reemplaza el código defectuoso por la sintaxis correcta. Por ejemplo, cambia una condición mal escrita:
{% if product.available %}asegurándote de cerrarla correctamente al final del bloque con{% endif %}. - Haz clic en el botón Guardar en la esquina superior derecha del editor.
- Actualiza tu tienda en una pestaña de incógnito para verificar que el error ha desaparecido y el sitio carga con normalidad.