> ## Documentation Index
> Fetch the complete documentation index at: https://docs.wisepim.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Bloques condicionales

> Muestra contenido distinto según los datos del producto con lógica si/entonces. Reacciona al precio, stock, categoría, país o temporada, con el texto correcto por producto automáticamente.

Muestra el contenido adecuado para cada producto de forma automática. Los bloques condicionales funcionan como sentencias si/entonces: defines las condiciones y WISEPIM elige el contenido que coincide por producto. El stock bajo recibe un mensaje de urgencia, una mercancía peligrosa una advertencia de seguridad, un producto premium una línea de garantía. Las reglas las escribes una sola vez.

Configúralos en la pestaña **Condicional** en **Configuración > [Content Logic](/es/workflows/content-logic)**.

## Crear un bloque condicional

<img className="block dark:hidden" src="https://mintcdn.com/swiftsyncai/ZdmnAJ65bwRiVjL1/images/marketing-screenshots/settings/content-logic-conditional-light-branded.webp?fit=max&auto=format&n=ZdmnAJ65bwRiVjL1&q=85&s=0700883ca05ac437c11efefcc15a6543" alt="WISEPIM content logic, the Conditional tab where dynamic conditional rules are defined" width="2400" height="1445" data-path="images/marketing-screenshots/settings/content-logic-conditional-light-branded.webp" />

<img className="hidden dark:block" src="https://mintcdn.com/swiftsyncai/Q3dIqlj_CJMF6Idi/images/marketing-screenshots/settings/content-logic-conditional-dark-branded.webp?fit=max&auto=format&n=Q3dIqlj_CJMF6Idi&q=85&s=bb241976daa038d45c71f40c67178f82" alt="WISEPIM content logic, the Conditional tab where dynamic conditional rules are defined" width="2400" height="1445" data-path="images/marketing-screenshots/settings/content-logic-conditional-dark-branded.webp" />

<Steps>
  <Step title="Crea el bloque">
    Dale un nombre y una clave.
  </Step>

  <Step title="Define las condiciones">
    Elige un campo del producto, selecciona un operador e ingresa un valor con el que comparar. Combina varias condiciones con **AND** u **OR**.
  </Step>

  <Step title="Escribe el contenido">
    Ingresa el contenido para cuando se cumplan las condiciones (**entonces**). Agrega ramas **else if** para otros casos y un **else** opcional como contenido por defecto.
  </Step>

  <Step title="Referencia en el contenido">
    Usa la clave para insertar el bloque en cualquier lugar donde se admitan variables.
  </Step>
</Steps>

### Operadores de condición

| Operador                | Qué comprueba                  | ¿Necesita valor? |
| ----------------------- | ------------------------------ | ---------------- |
| `equals`                | Coincidencia exacta            | Sí               |
| `not_equals`            | No es igual                    | Sí               |
| `contains`              | Contiene una subcadena         | Sí               |
| `not_contains`          | No contiene                    | Sí               |
| `starts_with`           | Comienza con                   | Sí               |
| `ends_with`             | Termina con                    | Sí               |
| `greater_than`          | Mayor que (numérico)           | Sí               |
| `less_than`             | Menor que (numérico)           | Sí               |
| `greater_than_or_equal` | Mayor o igual que              | Sí               |
| `less_than_or_equal`    | Menor o igual que              | Sí               |
| `in_list`               | Es uno de (separados por coma) | Sí               |
| `is_empty`              | No tiene valor                 | No               |
| `is_not_empty`          | Tiene un valor                 | No               |
| `is_true`               | Booleano verdadero             | No               |
| `is_false`              | Booleano falso                 | No               |

Las condiciones pueden referenciar cualquier campo del producto, atributo personalizado o variable de fecha/hora.

## Patrones habituales

Estos son bloques listos para usar en escenarios cotidianos. Cada fila es una rama, evaluada de arriba abajo.

<AccordionGroup>
  <Accordion title="Banner de envío gratis por precio" icon="truck">
    Muestra un mensaje de envío distinto según el precio del producto. **Clave:** `free_shipping`

    | Rama | Condición                      | Contenido                                                                                                   |
    | ---- | ------------------------------ | ----------------------------------------------------------------------------------------------------------- |
    | IF   | `product.price` mayor que `50` | Free shipping included.                                                                                     |
    | ELSE | No                             | Shipping calculated at checkout. Add €`{{global.free_shipping_threshold}}` to your order for free shipping. |
  </Accordion>

  <Accordion title="Mensajes de urgencia por stock" icon="boxes">
    Crea urgencia con el stock bajo y fija expectativas para los productos agotados. **Clave:** `stock_message`

    | Rama    | Condición                                                                               | Contenido                                                    |
    | ------- | --------------------------------------------------------------------------------------- | ------------------------------------------------------------ |
    | IF      | `product.stock_quantity` menor que `5` AND `product.stock_status` es igual a `in_stock` | Only `{{product.stock_quantity}}` left in stock, order soon. |
    | ELSE IF | `product.stock_status` es igual a `out_of_stock`                                        | Currently out of stock. `{{global.restock_text}}`            |
    | ELSE IF | `product.stock_status` es igual a `on_backorder`                                        | Available on backorder. `{{global.backorder_lead_time}}`     |
    | ELSE    | No                                                                                      | In stock and ready to ship. `{{global.lead_time_text}}`      |
  </Accordion>

  <Accordion title="Promociones de temporada" icon="snowflake">
    Muestra contenido promocional distinto según la época del año. **Clave:** `seasonal_promo`

    | Rama    | Condición                             | Contenido                                                                  |
    | ------- | ------------------------------------- | -------------------------------------------------------------------------- |
    | IF      | `current.season` es igual a `Winter`  | Winter Sale: save up to 30% on selected items.                             |
    | ELSE IF | `current.season` es igual a `Summer`  | Summer clearance: extra discounts on last season's stock.                  |
    | ELSE IF | `current.month` es igual a `November` | Black Friday deals: check `{{global.website_url}}`/blackfriday for offers. |
    | ELSE    | No                                    | *(vacío, sin promo)*                                                       |
  </Accordion>

  <Accordion title="Plazo de entrega B2B por tipo de producto" icon="clock">
    Muestra el plazo de entrega adecuado por producto. **Clave:** `lead_time`

    | Rama    | Condición                                                  | Contenido                                                                       |
    | ------- | ---------------------------------------------------------- | ------------------------------------------------------------------------------- |
    | IF      | `product.category` in\_list `Custom Orders, Made to Order` | Lead time: 4-6 weeks. Contact `{{global.support_email}}` for expedited options. |
    | ELSE IF | `product.stock_quantity` mayor que `100`                   | In stock. Ships within 1-2 business days.                                       |
    | ELSE IF | `product.stock_quantity` mayor que `0`                     | In stock. `{{global.lead_time_text}}`                                           |
    | ELSE    | No                                                         | Available on backorder. `{{global.backorder_lead_time}}`                        |
  </Accordion>

  <Accordion title="Advertencias de material peligroso" icon="triangle-alert">
    Añade advertencias de seguridad a las mercancías peligrosas automáticamente. **Clave:** `hazmat_notice`

    | Rama | Condición                            | Contenido                                                                                                                                     |
    | ---- | ------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------- |
    | IF   | `product.is_dangerous_good` is\_true | Warning: Hazardous material. Special shipping restrictions apply. `{{brand.hazmat_handling}}` Refer to the Safety Data Sheet before handling. |
    | ELSE | No                                   | *(vacío)*                                                                                                                                     |
  </Accordion>

  <Accordion title="Sufijo de descripción por nivel de precio" icon="layers">
    Añade mensajes distintos según el nivel de precio del producto. **Clave:** `price_tier_text`

    | Rama    | Condición                       | Contenido                                                                                                                    |
    | ------- | ------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
    | IF      | `product.price` mayor que `500` | Premium product. Includes `{{brand.warranty_text}}` Contact our specialist team for bulk pricing: `{{global.support_email}}` |
    | ELSE IF | `product.price` mayor que `100` | Professional grade. `{{brand.warranty_text}}` Volume discounts available.                                                    |
    | ELSE    | No                              | `{{brand.warranty_text}}`                                                                                                    |
  </Accordion>

  <Accordion title="Texto de cumplimiento por país de origen" icon="globe">
    Muestra distintas declaraciones de cumplimiento según dónde se fabrica el producto. **Clave:** `origin_compliance`

    | Rama    | Condición                                                 | Contenido                                                                           |
    | ------- | --------------------------------------------------------- | ----------------------------------------------------------------------------------- |
    | IF      | `product.country_of_origin` in\_list `CN, TW, VN, TH`     | Imported product. Complies with EU import regulations. `{{global.reach_statement}}` |
    | ELSE IF | `product.country_of_origin` in\_list `DE, NL, FR, IT, ES` | Manufactured in the EU. `{{global.compliance_general}}`                             |
    | ELSE    | No                                                        | `{{global.compliance_general}}`                                                     |
  </Accordion>

  <Accordion title="Aviso de integridad de datos (interno)" icon="circle-alert">
    Marca los productos con datos faltantes en exportaciones o informes internos. **Clave:** `data_quality_note`

    | Rama    | Condición                            | Contenido                                 |
    | ------- | ------------------------------------ | ----------------------------------------- |
    | IF      | `product.description` is\_empty      | MISSING: Product description not set.     |
    | ELSE IF | `product.meta_description` is\_empty | INCOMPLETE: SEO meta description missing. |
    | ELSE IF | `product.main_image` is\_empty       | INCOMPLETE: Main product image missing.   |
    | ELSE    | No                                   | *(vacío, los datos parecen completos)*    |
  </Accordion>

  <Accordion title="Mensajes de MOQ para B2B" icon="package">
    Muestra información de pedido mínimo que varía según el tipo de producto y el nivel de stock. **Clave:** `moq_message`

    | Rama    | Condición                                                           | Contenido                                                                                         |
    | ------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
    | IF      | `product.category` in\_list `Heavy Machinery, Industrial Equipment` | Minimum order: 1 unit. Freight shipping required. Contact `{{global.support_email}}` for a quote. |
    | ELSE IF | `product.stock_quantity` mayor que `500`                            | In stock. Order from `{{category.moq}}` units. Volume discounts available for 500+ units.         |
    | ELSE    | No                                                                  | Minimum order: `{{category.moq}}` units. `{{global.lead_time_text}}`                              |
  </Accordion>

  <Accordion title="Contenido de la insignia de oferta" icon="badge-percent">
    Genera texto dinámico para la insignia de oferta según la profundidad del descuento. **Clave:** `sale_badge`

    | Rama    | Condición                                               | Contenido                                     |
    | ------- | ------------------------------------------------------- | --------------------------------------------- |
    | IF      | `product.savings_percent` greater\_than\_or\_equal `50` | MEGA DEAL: `{{product.savings_percent}}`% OFF |
    | ELSE IF | `product.savings_percent` greater\_than\_or\_equal `25` | SALE: `{{product.savings_percent}}`% OFF      |
    | ELSE IF | `product.special_price` is\_not\_empty                  | `{{product.savings_percent}}`% OFF            |
    | ELSE    | No                                                      | *(vacío, no está en oferta)*                  |
  </Accordion>
</AccordionGroup>

## Consejos

* Las ramas se evalúan de arriba abajo y gana la primera que coincide. Coloca las condiciones específicas por encima de las generales.
* Usa **AND** cuando todas las condiciones deban cumplirse (stock bajo AND en stock). Usa **OR** cuando baste con que se cumpla una.
* Los campos de contenido admiten todas las variables: `{{product.*}}`, `{{global.*}}`, `{{brand.*}}` y `{{category.*}}`.
* Deja el contenido de **else** vacío cuando no quieras ninguna salida para los productos que no coinciden.

## Relacionado

<CardGroup cols={2}>
  <Card title="Variables predeterminadas" icon="database" href="/es/workflows/content-logic/default-variables">
    Los campos `{{product.*}}` y `{{current.*}}` integrados que comparas.
  </Card>

  <Card title="Variables globales" icon="globe" href="/es/workflows/content-logic/global-variables">
    Valores reutilizables para incluir en el contenido de tus ramas.
  </Card>

  <Card title="Variables de marca" icon="tag" href="/es/workflows/content-logic/brand-variables">
    Contenido específico de marca para mostrar dentro de las condiciones.
  </Card>

  <Card title="Variables de categoría" icon="folder-tree" href="/es/workflows/content-logic/category-variables">
    Contenido específico de categoría para mostrar dentro de las condiciones.
  </Card>
</CardGroup>
