Última modificación: 8 de octubre de 2025
export_to_template_context
es un parámetro que hace que los parámetros de una etiqueta HubL estén disponibles para el entorno de la plantilla sin tener que renderizar la etiqueta HubL. Este parámetro se puede utilizar con todas las etiquetas HubL. El diccionario widget_data
se utiliza para recuperar estos parámetros, almacenarlos en variables, y/o incorporarlos a la lógica de tu plantilla.
Al hacer que los parámetros de una etiqueta HubL estén disponibles en el contexto de la plantilla, sin renderizar realmente la etiqueta HubL, puedes permitir que los usuarios tomen decisiones en el editor de contenido que afecten a cómo se renderiza la plantilla. Por ejemplo, digamos que quieres renderizar un determinado bloque de código solo cuando el usuario da un valor a un campo. Esto es posible con este parámetro.
Primero, debes agregar export_to_template_context=True
a la etiqueta HubL. Luego, debes utilizar un widget_data.module.parameter_you_want_to_retreive
.
Uso en módulos personalizados
export_to_template_context=True
se está admite en los módulos personalizados, ya que no tiene ningún propósito real para ellos. No es necesario utilizar export_to_template_context
para obtener el valor de un módulo dentro de una plantilla, ya puedes acceder a él. Si necesitas ocultar visualmente la salida del módulo, puedes construir el módulo para que no muestre nada, o incluir un campo booleano que active o desactive si el módulo muestra algo.
Imágenes de fondo seleccionables por el usuario
En este ejemplo, se crea una etiqueta HubL imagen pero se exporta al contexto de la plantilla en lugar de renderizarse. El parámetrosrc
se recupera con la etiqueta widget_data
y se representa como la fuente de una imagen de fondo en una etiqueta de estilo.
Campo de elección para renderizar el marcado predefinido
El siguiente ejemplo utiliza el parámetroexport_to_template_context
junto con un módulo de elección para cambiar un mensaje de banner en una página de carreras. El usuario selecciona un departamento a través de la interfaz de usuario y el título cambia sin que el usuario tenga que editar el contenido.
Recuperación de parámetros de módulos ya renderizados en la plantilla
Si se deseas recuperar un parámetro de un módulo o etiqueta que ya se está renderizando en una página, puedes acceder al módulo dentro de un diccionario llamadowidgets
. El parámetro export_to_template_context
no es necesario. La sintaxis es la siguiente:
Nota:
El método anterior no admite la recuperación de valores de campos en módulos globales, ya quecontent.widgets
no accederá a los módulos globales.Impresión de información del módulo HubL en el listado del blog
Aunque las plantillas de blog se utilizan generalmente para los blogs, también se pueden reutilizar para crear otros tipos de listados. Para ello, puedes utilizar las técnicas descritas anteriormente. Por ejemplo, es posible que desees crear un diseño de listado de la prensa que ha recibido su empresa, pero en lugar de enlazar a los posts, quieres que el listado enlace a otra página. Puedes ver este concepto en acción en academy.hubspot.com/projects. La página de listado de proyectos es una plantilla de listado de blog, pero cada post enlaza con una página regular de HubSpot. El creador de contenidos especifica el enlace de destino en el editor. Dentro del encabezado del código del post de blog individual, se definiría un campo de texto. Si no quieres que el texto se renderice en el post, debes usarexport_to_template_context
.
content.widgets.custom_blog_link.body.value
. Aunque los widget_data
no están disponibles para el listado del blog, el valor de ese campo sigue almacenado en el contexto de los widgets del contenido individual.
A continuación se muestra un bucle básico de listado de blogs que muestra este enlace personalizado con cada post. Si utilizas esta técnica, deberás asegurarte de agregar el subdirectorio creado automáticamente para cada post del blog a tu archivo robots.txt para evitar que esos posts vacíos sean rastreados por Google y otros rastreadores.