# Expresiones para sitios LWR

## Descripción general

Con expresiones, puedes realizar cálculos y acceder a valores de propiedades y otros datos para pasarlos a los atributos del componente. Usa expresiones para salida dinámica o para pasar valores a componentes asignándolos a atributos.

Una expresión es cualquier conjunto de valores literales, variables, subexpresiones u operadores que pueden resolverse a un solo valor. No se permiten llamadas a métodos en las expresiones.

La sintaxis de la expresión es: **`{!expression}`** donde expression es un marcador de posición.

## Expresiones de enlace de datos

| Expresión                         | Descripción                                                                                   | Páginas y componentes compatibles                                                                                                                                                                                                                                                                                                                                                      |
| --------------------------------- | --------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **`{!Item.field}`**               | Obtiene los datos del campo en los datos vinculados actuales.                                 | Cualquier cosa que esté vinculada a datos. Puede incluir CMS de Salesforce o datos de registros.                                                                                                                                                                                                                                                                                       |
| **`{!Item.field._rawValue}`**     | Obtiene el valor sin formato del campo de datos.                                              | Cualquier cosa que esté vinculada a datos del CRM.                                                                                                                                                                                                                                                                                                                                     |
| **`{!Item.field._displayValue}`** | Obtiene el valor formateado y localizado del campo de datos.                                  | Cualquier cosa que esté vinculada a datos del CRM.                                                                                                                                                                                                                                                                                                                                     |
| **`{!Item._detailURL}`**          | Obtiene la URL de un elemento de datos del CMS de Salesforce.                                 | Cualquier cosa que esté vinculada a un elemento del CMS, incluidas las páginas de detalle del CMS.                                                                                                                                                                                                                                                                                     |
| **`{!Label.namespace.name}`**     | Define el valor localizado de la etiqueta cuando especificas etiquetas en Experience Builder. | Primero, crea una etiqueta personalizada traducida en Salesforce Setup. Para más información, consulta [Traducir etiquetas personalizadas](https://help.salesforce.com/s/articleView?id=cl_translate_edit.htm\&language=en_US\&type=5). Luego, usa la expresión de etiqueta en cualquier componente de Experience Builder que tenga un campo de texto para ver la etiqueta localizada. |

## Otras expresiones

Usa otras expresiones para consultar parámetros, resolver la basePath correcta para un sitio o aprovechar campos de usuario en las expresiones.

| Expresión                                 | Descripción                                                                                                                            | Páginas y componentes compatibles                                                                                                                                                                                |
| ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **`{!Route.param}`**                      | Obtiene un parámetro de consulta de la URL.                                                                                            | <ul><li>Todas las páginas</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul>                                     |
| **`{!param}`**                            | Obtiene el valor de un parámetro de una URL donde : precede al parámetro. Por ejemplo, obtiene {!term} de la URL /global-search/:term. | <ul><li>Todas las páginas con un parámetro dinámico en su URL</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul> |
| **`{!Site.basePath}`**                    | Se resuelve en el basePath del sitio LWR.                                                                                              | <ul><li>Todas las páginas</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul>                                     |
| **`{!User.userId}`**                      | Se resuelve en el ID de Salesforce del usuario.                                                                                        | <ul><li>Todas las páginas</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul>                                     |
| **`{!User.isGuest}`**                     | Devuelve TRUE o FALSE según si el usuario es un usuario invitado.                                                                      | <ul><li>Todas las páginas</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul>                                     |
| **`{!User.Record.<User sObject Field>}`** | Se resuelve en el valor de un campo del objeto Usuario de Salesforce.                                                                  | <ul><li>Todas las páginas</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul>                                     |
| **`{!User.Commerce.BuyerGroups}`**        | Devuelve una lista de grupos de compradores asociados con el usuario cuando se usa en sitios creados con las plantillas Commerce.      | <ul><li>Todas las páginas</li><li>Componentes estándar y personalizados con propiedades de tipo cadena</li><li>Editor HTML</li><li>Editor de contenido enriquecido</li></ul>                                     |

* Cuando usas la expresión {!param} o {!Route.param} en los componentes Editor HTML o Editor de contenido enriquecido, algunos caracteres especiales HTML se escapan o se reemplazan por valores diferentes, por motivos de seguridad. Estos caracteres incluyen <, > y &.
* Los sitios LWR no admiten expresiones que muestren información de usuarios autenticados, comenzando con {!CurrentUser.
* Las expresiones con datos de usuario se resuelven para el Editor de contenido enriquecido solo en sitios de vista previa y publicados.
* Al vincular datos de Usuario, puedes acceder a todos los campos del sObject User usando la expresión {!User.Record.\<User sObject Field>}. También puedes usar la expresión {!User.Commerce.\<Commerce Field>} para acceder a datos de usuario relacionados con Commerce en sitios creados con las plantillas Commerce. En la versión Summer ’23, solo BuyerGroups es compatible como campo de Commerce.

### Fuente

<https://developer.salesforce.com/docs/atlas.en-us.exp_cloud_lwr.meta/exp_cloud_lwr/advanced_expressions.htm><br>
