Saltar al contenido principal

Configuraciones

El sistema de parámetros clave/valor gestionados por el editor de contenido, sin necesidad de código.

Introducción​

Configuraciones es un sistema de parámetros clave/valor, gestionados por el editor de contenido en el backoffice — pensado para valores del sitio web que cambian con frecuencia o varían según el idioma (p. ej.: número de teléfono, dirección, enlaces de redes sociales, una imagen de logotipo), sin necesidad de tocar código.

Involucra tres formularios en el backoffice:

  • Tipo (configuration_parameter_type)
  • Parámetro (configuration_parameter)
  • Configuración (configuration)

Tipo​

Define qué tipo de valor acepta un Parámetro. Solo tiene Código (code) y Nombre (name). Ya vienen creados por defecto:

CódigoNombre
booleanBooleano
numberNúmero
imageImagen
colorColor
textTexto
htmlHTML

Parámetro​

Define una "clave" de configuración — Código (code, usado en el código para obtener el valor), Descripción y el Tipo (cuál de los tipos anteriores). Ej.: un parámetro numero-telefono, del tipo Texto.

Configuración​

Es el valor de un Parámetro, para un determinado Idioma — Valor (value, texto) o Imagen (value_img), dependiendo del tipo del parámetro.

Valores sin idioma (fallback genérico)​

Si el campo Idioma de una Configuración queda en blanco, ese valor pasa a usarse como fallback para todos los idiomas que no tengan un valor propio definido para ese parámetro. Esto evita tener que duplicar el mismo valor (p. ej.: un número de teléfono que es igual en todos los idiomas) en cada idioma por separado — solo se define una vez, sin idioma asociado, y se define un valor específico por idioma únicamente donde sea realmente diferente.

Programáticamente​

La clase website/src/common/Cluar.js proporciona funciones para leer configuraciones:

  • Cluar.configuration(parametro) — obtiene el valor de un parámetro en el idioma actual; si no hay valor para ese idioma, usa el valor sin idioma (fallback); si no hay ninguno de los dos, devuelve el propio nombre del parámetro (útil para detectar rápidamente una configuración faltante).
  • Cluar.configurationNumber(parametro) — igual, pero convierte el valor a número (0 si no es numérico).
  • Cluar.configurationMultilines(parametro) — igual, pero convierte los saltos de línea en <br>.

Siguiente paso​

Explora los Diccionarios.