CMS: usar expresiones del CMS para manipular cadenas de texto
18 min de lectura
Usa expresiones del CMS para liberar todo el potencial del CMS sin tener que usar código JS o Velo.
Las expresiones te permiten combinar texto estático con valores dinámicos de varios campos de la colección en una sola cadena de texto. Aplica formato a fechas, horas y números dinámicos para mostrarlos según sea necesario. Construye ecuaciones matemáticas que usen campos numéricos en sus cálculos. Incluso puedes combinar funciones en la misma expresión para liberar infinitas posibilidades.
Para obtener un resumen general de este proceso, consulta nuestro video de la guía definitiva del CMS (contenido en inglés).
En este artículo, obtén más información sobre lo siguiente:
Acerca de las funciones de las expresiones del CMS
Una expresión del CMS combina funciones, valores literales y valores de campos de la colección para presentar los datos en tu sitio de nuevas maneras.
Después de conectar un elemento de la página compatible a un conjunto de datos, puedes conectar sus valores de texto a una expresión de CMS. Luego, crea una expresión que consta de funciones, ID de campo, cadenas, números y otra sintaxis. Después, el texto en el elemento conectado muestra los resultados del cálculo de la expresión.
Las expresiones constan de la siguiente estructura:
- Funciones: define cómo calcular los valores que aparecen entre paréntesis después de la función, con los valores separados por comas (por ejemplo, MULTIPLY(price, count), DAYS(_createdDate, NOW()), CONCAT("Created on ", _created Date)).
- ID de campo: los identificadores únicos de cada campo de la colección (por ejemplo, title, _createdDate, clientName).
- Cadenas: una secuencia de caracteres que puede incluir letras, números, símbolos y espacios.
- Literales de cadena: una secuencia de caracteres entre comillas que se usa para mostrar texto estático (por ejemplo, "Hola", 'Hola', '"Errata" por Carlos Paz', "\"Errata\" por Carlos Paz", ""barra invertida es \\, barra diagonal es /").
- Literales numéricos: valores numéricos utilizados por la función (por ejemplo, 123, 1000, 3.14).
- Literales de matriz: una forma de expresar una matriz, que es una colección ordenada de valores, generalmente del mismo tipo, encerrados entre corchetes (por ejemplo, [1,2,3], ["cat", "dog", "mouse"]).
- Constantes especiales: valores predefinidos que tienen un significado específico dentro del alcance de la función (por ejemplo, true, false, undefined, null).
Ten en cuenta que las expresiones distinguen entre mayúsculas y minúsculas. Al usar campos dentro de expresiones, usa ID de campo en lugar de nombres de campo, y recuerda que los ID de campo también distinguen entre mayúsculas y minúsculas.
A medida que escribas tus expresiones, recibirás sugerencias que te ayudarán a usar correctamente las funciones y los ID de campo. Para que sea más fácil ver los ID de campo en el editor, habilita el modo desarrollador.
Información importante sobre la escritura de expresiones:
- Ingresa los ID de campo en lugar de los nombres de campo cuando hagas referencia a los campos de la colección. Los ID de campo son identificadores únicos para cada campo de la colección, a diferencia de los nombres de campo.
- Las funciones y los ID de campo distinguen entre mayúsculas y minúsculas. Presta atención a las mayúsculas y minúsculas utilizadas en ambos.
- Para las funciones CONCAT, escribe los valores literales de cadena "estáticos" entre comillas. Esto incluye los signos de puntuación estáticos y los espacios entre los campos de referencia.
- Si la función no funciona, consulta el mensaje de error en la parte inferior del campo Expresión para obtener pistas sobre cómo solucionar el problema.
Conectar elementos a expresiones en el conjunto de datos
Para comenzar, conecta el elemento correspondiente al CMS y elige la opción de conexión de expresión. Luego, ingresa la expresión que deseas usar. Consulta las siguientes secciones para obtener ayuda sobre cómo crear tu expresión.
Editor de Wix
Editor X
Editor de Wix Studio
- En el editor, haz clic en el elemento que deseas conectar al CMS (por ejemplo, texto, botón, galería).
- Haz clic en el icono Conectar a CMS .
- Haz clic en el menú desplegable Elige un conjunto de datos y selecciona un conjunto de datos existente que se conecte a tu colección. Como alternativa, haz clic en Crear un conjunto de datos y luego elige la colección que deseas conectar.
- Haz clic en el menú desplegable correspondiente debajo de Opciones de conexión y selecciona Expresión.
- Haz clic en el campo Expresión.
- Ingresa el nombre de la función que deseas usar (por ejemplo, CONCAT, DATE, TEXT).
Consejo: Una vez que empieces a escribir, puedes seleccionar de una lista de posibles funciones para usar.
- Escribe un paréntesis de apertura: (
- Ingresa los ID de campo o los valores que deseas usar en la expresión. A medida que escribes, aparece una lista de ID de campo coincidentes que puedes seleccionar.
- Escribe un paréntesis de cierre: )
Ejemplos de expresiones
Consulta los ejemplos para escribir diferentes tipos de expresiones en las siguientes secciones.
Combinar valores de varios campos mediante la concatenación de cadenas
Usa la función CONCAT para combinar valores de varios campos de colección diferentes en un solo campo de texto. Agrega tu propio texto a la función para combinar caracteres estáticos con valores dinámicos. Los caracteres estáticos no cambian, mientras que los valores dinámicos sí lo hacen según el ítem recuperado por el conjunto de datos. Asegúrate de poner todo el texto estático entre comillas, incluidos los espacios y los signos de puntuación (por ejemplo, " " o ",").
Puedes usar diferentes funciones para hacer cosas similares y también puedes combinarlas dentro de funciones para tareas más avanzadas. Si hay un problema con la expresión, consulta el mensaje de error para obtener pistas sobre cómo resolverlo.
Un ejemplo para usar la función CONCAT es crear texto personalizado para la introducción de una página dinámica de ítem. El texto podría presentar a cada miembro por su nombre, mencionar el cargo que tienen y cuánto tiempo han estado en la empresa. Así es como se vería esa expresión:
1CONCAT("Nuestro ",jobTitle," ",title,", ha trabajado aquí desde el ",date,".")
En este ejemplo:
El ID del campo jobTitle representa el campo de la colección con el cargo de cada miembro. El ID del campo title es para el campo con el nombre de cada miembro. La clave hireDate proviene de un campo con la fecha de inicio de empleo de cada miembro. Observa cómo todo el texto estático y la puntuación están entre comillas.
Muéstrame cómo combinar funciones y exhibir el año sin el mes ni el día
Mira la tabla a continuación para obtener más ejemplos básicos del uso de la función CONCAT:
Caso práctico | Expresión | Ejemplo | Resultado |
---|---|---|---|
Combinar valores de campo sin espacios ni puntuación | CONCAT(value,value) | CONCAT(title,jobTitle) | Brian Chang, Vicepresidente de Productos |
Combinar valores de campo separados por una coma y un espacio | CONCAT(value,", ",value) | CONCAT(title,", ",jobTitle) | Brian Chang, Vicepresidente de Productos |
Combinar texto estático con valores de campo | CONCAT("Hello, ",value) | CONCAT("Hello, ",title) | Hello, Brian Chang |
Combinar valores de campo con texto estático al principio y al final | CONCAT("Hello, ",value,", welcome back.") | CONCAT("Hello, ",title,", welcome back.") | Hello, Brian Chang, welcome back. |
Formato de fecha y hora
Cuando quieras controlar el formato de las fechas y las horas en tu sitio online, o calcular valores a partir de fechas, usa las funciones de fecha y hora. Estas funciones funcionan con tipos de campo de fecha, hora y número.
En el ejemplo anterior:
La función DAYS devuelve el número de días entre un campo dinámico dueDate y la fecha de hoy. Observa cómo combina la función DAYS con la función TODAY, así como la función CONCAT que se usa para fusionar texto estático y dinámico.
Haz clic en la función correspondiente a continuación para obtener más información al respecto:
DATE
DATEVALUE
YEAR
MONTH
DAY
HOUR
MINUTE
SECOND
DAYS
DAYS360
EDATE
EOMONTH
NETWORKDAYS
NETWORKDAYSINTL
NOW
TODAY
TIME
TIMEVALUE
WEEKDAY
ISOWEEKNUM
WEEKNUM
WORKDAY
WORKDAYINTL
YEARFRAC
Formato de números con la función TEXT
Usa la función TEXT para aplicar formato a los números. Por ejemplo, puedes dar formato a los valores de un tipo de campo numérico como divisa o porcentaje.
En el ejemplo anterior:
La función TEXT da formato a un tipo de campo numérico (precio) como un monto en dólares. Observa cómo se inserta la función TEXT dentro de una función CONCAT, que agrega el texto estático antes del precio.
Haz clic a continuación para ver ejemplos de cómo usar la función TEXT:
Convertir un formato numérico en un formato de moneda
Convertir un formato numérico en un formato de porcentaje (%)
Funciones matemáticas
Puedes usar funciones matemáticas para realizar cálculos basados en diferentes tipos de campos numéricos o números estáticos.
En el ejemplo anterior:
La función MENOS calcula 20 -11= 9. El valor 20 es estático, mientras que el valor del campo numérico (rewardPoints) es dinámico. Observa cómo la expresión inserta la función MINUS dentro de la función CONCAT, que combina texto estático con valores dinámicos.
Mira la tabla a continuación para ver más ejemplos del uso de expresiones matemáticas:
Caso práctico | Expresión | Ejemplos | Resultados |
---|---|---|---|
Calcular la suma de 2 números | ADD(value,value) | ADD(number1,number2) ADD(4,20) | 24 |
Calcular la diferencia entre 2 números | MINUS(value,value) | MINUS(number1,number2) MINUS(100,1) | 99 |
Calcula multiplicando 2 números | MULTIPLY(value,value) | MULTIPLY(number1,number2) MULTIPLY(2,4) | 6 |
Calcula 1 número dividido por otro | DIVIDE(value,value) | DIVIDE(number1,number2) DIVIDE(10,2) | 5 |
Devuelve "true" si 2 valores son iguales y "false" en caso contrario | EQ(value,value) | EQ(number1,number2) EQ(200,200) | true |
Eleva un número ('x') a la potencia de otro número ('y') | POW(x,y) | POW(2,3) POW(3,3) | 8 27 |
Comprueba si dos valores son iguales | EQ (igual) | EQ(5,5) | true |
Comprueba si dos valores no son iguales | NE (distinto) | NE(5,7) | true |
Comprueba si un valor es mayor que otro | GT (mayor que) | GT(7,5) GT(7,7) | true false |
Comprueba si un valor es menor que otro | LT (menor que) | LT(5,7) LT(7,5) | true false |
Comprueba si un valor es mayor o igual que otro | GTE (mayor o igual que) | GTE(7,5) GTE(5,5) GTE(5,4) | true true false |
Comprueba si un valor es menor o igual que otro | LTE (menor o igual que) | LTE(5,7) LTE(5,5) LTE(5,4) | true true false |
Preguntas frecuentes
Haz clic a continuación para obtener respuestas a las preguntas más frecuentes sobre el uso de expresiones.
¿Con qué elementos puedo usar expresiones?
¿Dónde puedo encontrar los ID de campo?
¿Te ha sido útil?
|