FallBack de Idioma en Sitecore XM Cloud: Mejora la Experiencia Multilingüe

Manejar sitios a nivel global implica detalles tan importantes como micuciosos. En Sitecore XM Cloud, el fallback de idioma es una funcionalidad clave para sitios multilingües que permite mostrar contenido en otro idioma cuando no existe una versión traducida. Esto mejora la experiencia del usuario y agiliza el despliegue de sitios en nuevos idiomas sin…

,

Manejar sitios a nivel global implica detalles tan importantes como micuciosos. En Sitecore XM Cloud, el fallback de idioma es una funcionalidad clave para sitios multilingües que permite mostrar contenido en otro idioma cuando no existe una versión traducida. Esto mejora la experiencia del usuario y agiliza el despliegue de sitios en nuevos idiomas sin necesidad de traducir todo de inmediato.


¿Cómo funciona el fallback?

Cuando un ítem no tiene versión en el idioma actual, Sitecore puede mostrar el contenido desde otro idioma configurado como fallback. Esto puede aplicarse a:

  • Ítems completos (item-level fallback)
  • Campos individuales (field-level fallback)

Configuración paso a paso

  • Definir reglas de fallback entre idiomas
    En /sitecore/System/Languages, cada idioma tiene un campo Fallback Language donde defines a qué idioma debe caer si no hay contenido disponible.
  • Activar fallback en el entorno
    En el archivo de configuración Sitecore.Services.GraphQL.EdgeContent.config, activa:
<setting name="ExperienceEdge.EnableItemLanguageFallback" value="true"/> <setting name="ExperienceEdge.EnableFieldLanguageFallback" value="true"/>
  • Habilitar fallback en ítems o plantillas
    • En el Content Editor, activa Standard Fields desde la pestaña View.
    • En la sección Advanced del ítem o plantilla, marca Enable Item Fallback.
  • Habilitar fallback en campos específicos
    En el template del campo, puedes activar:
    • Enable field level fallback
    • Enable versioned field level fallback

Cuando publicas contenido, Sitecore almacena las dependencias de fallback en Edge. Si el contenido en el idioma fallback cambia, todos los ítems que dependen de él se republican automáticamente.


Recientemente experimenté un error, la serializacion fallaba cuando un item versión de idioma vacía o mal formada creí que era tema de fallback pero no fue así. se debía a que el CLI espera encontrar información válida en cada versión de idioma que detecta. Pero de ahi surgió la curiosidad de saber que exactamente hace el fallback.

Cuando haces un sitecore ser pull, el CLI inspecciona cada versión de idioma de los ítems. Si encuentra un ítem con:

  • Un idioma definido, pero sin datos válidos.
  • Campos que deberían existir pero están vacíos.
  • Una estructura YAML que no puede formarse correctamente.

Entonces lanza errores como:

Serialized version contained a blank language value

Esto significa que el sistema intentó serializar una versión lingüística vacía.

El fallback se usa en runtime (para mostrar contenido) y no tiene efecto directo en la serialización.

Lo que tuve que hacer :

  • Eliminar versiones vacías manualmente desde el Content Editor.
  • Usar SPE para detectar y limpiar ítems que tengan Language = sin campos.
  • Excluir esos ítems temporalmente con rules.scope = "Ignored" mientras lograba sincronizar correctamente.


Mayra Olivo is a Senior Software Engineer at OSHYN, where she leads backend development and cloud architecture initiatives using .NET, Azure, and data analytics tools. With over 7 years of experience, she has delivered scalable digital solutions for global brands, specializing in performance optimization, automation, and digital experience platforms such as Sitecore and Optimizely.

She is also the founder of SUG Latam and a three-time Sitecore MVP, recognized for her leadership in tech communities across Latin America. Mayra focuses on innovation, community building, and empowering teams through knowledge sharing and strategic collaboration. Her work has contributed to award-winning digital platforms and community impact initiatives.