En beta. Plazas limitadas.Abierto a todos en el primer trimestre de 2027

↑↓ moverse · Enter abrir · Esc cerrar

Publicación por plataforma

¿Qué es un widget de BigCommerce (Widgets API)?

Un widget de BigCommerce es una unidad de contenido en HTML, CSS y JavaScript, construida sobre una plantilla Handlebars, que se crea con la Widgets API y se coloca en una región de un tema Stencil. Una placement decide en qué plantilla de página, en qué región y en qué orden aparece, y el widget se renderiza como parte del HTML de la tienda.

Escrito por
Revisado por
Revisado por
Publicado 6 min de lectura
Takeaway:

Lo esencial

  • Un widget une una plantilla Handlebars y una configuración en JSON; la placement decide dónde sale.
  • Las regiones son huecos que declara el tema Stencil: un widget solo aparece donde el tema tiene una región para él.
  • Una placement se crea inactiva salvo que digas lo contrario: sin el estado active, no se ve nada.
  • Con entity_id, la placement se limita a un producto, una categoría, una marca o una página concretos.

«Widget» se usa para casi cualquier caja incrustada en una web. Aquí es un objeto concreto de BigCommerce: la pieza con la que una app o una agencia mete contenido en las páginas de un tema Stencil sin editar los archivos del tema. Un banner, un bloque de preguntas frecuentes o los datos estructurados de una ficha pueden llegar así. Para una tienda importa por una razón práctica: si el widget no tiene una región donde caer, o su placement está inactiva, el contenido existe en el panel y no existe en la página.

Cómo funciona

La Widgets API sirve para crear unidades de contenido y colocarlas por programa en páginas concretas de una tienda BigCommerce. Ese contenido puede ser HTML, CSS y JavaScript, y se configura con variables de Handlebars.⁠[1]BigCommerce Dev Center. Widgets API La documentación lo reparte en cinco conceptos:⁠[1]BigCommerce Dev Center. Widgets API

Concepto Qué es
Plantilla de widget (widget template) HTML con Handlebars que define la estructura del widget. Se reutiliza para crear varios widgets
Widget Una configuración más el identificador (UUID) de su plantilla
Configuración El JSON con el contenido que la plantilla pinta, hasta 64 KB
Región Un hueco declarado en los archivos del tema Stencil con {{{region name="..."}}}. Las que terminan en --global se muestran en todo el sitio
Placement Decide en qué región va el widget y en qué orden

Los widgets se renderizan como parte del HTML de la tienda. En la página se reconocen por dos atributos, data-content-region en la región y data-widget-id en el widget.⁠[1]BigCommerce Dev Center. Widgets API

La placement es donde se decide casi todo. Se crea con una petición POST a /v3/content/placements y solo exige dos campos: template_file, la plantilla de página a la que apunta, y widget_uuid, el widget.⁠[2]BigCommerce API Reference. Create Placement Los demás afinan:⁠[2]BigCommerce API Reference. Create Placement

  • entity_id limita la placement a una página concreta: el ID del producto en una ficha, el de la categoría en una categoría. La portada no lo admite. Según la documentación, el identificador puede ser de un producto, una marca, una categoría o una página.⁠[1]BigCommerce Dev Center. Widgets API
  • region y sort_order dicen en qué región va y en qué posición, si hay varios widgets en la misma.
  • channel_id elige el canal; si no lo indicas, usa el primero que se creó en la tienda.
  • status puede ser active o inactive, y por defecto es inactive.

Las placements con región aparecen en Page Builder; las que no tienen región necesitan que se configure el diseño directamente.⁠[2]BigCommerce API Reference. Create Placement Las plantillas de página posibles incluyen pages/product, pages/category y pages/home, entre otras.⁠[3]BigCommerce Developer Learning. Placements

Y hay límites por tienda: 100.000 widgets, 1.000 plantillas propias por canal y 5.000 en total, 75 placements por plantilla de página y 10.000 placements en total.⁠[1]BigCommerce Dev Center. Widgets API Si creas una placement por producto, en un catálogo grande ese límite llega pronto.

En una tienda

Un ejemplo ficticio: un widget con el JSON-LD de un trípode, colocado solo en su ficha. La placement se pediría así (el nombre de la región depende del tema; este es inventado):

{
  "widget_uuid": "00000000-0000-4000-8000-000000000001",
  "template_file": "pages/product",
  "entity_id": "112",
  "region": "ficha_inferior",
  "sort_order": 1,
  "status": "active"
}

Y en el HTML de la ficha 112 aparecería algo parecido a esto (simplificado):

<div data-content-region="ficha_inferior">
  <div data-widget-id="00000000-0000-4000-8000-000000000001">
    <script type="application/ld+json">
      { "@context": "https://schema.org", ... }
    </script>
  </div>
</div>

Que el marcado quede en el cuerpo y no en la cabecera no es un problema para Google: el JSON-LD va en una etiqueta <script> dentro del <head> o del <body>, y Google también lo procesa cuando lo inyectan widgets del gestor de contenidos.⁠[4]Google Search Central. Introduction to structured data markup in Google Search Clione usa este mismo camino: en BigCommerce, su grafo de datos estructurados se publica con la Widget API y se renderiza en el servidor.

Warning:

Lo que se suele confundir

Crear el widget no es publicarlo. Un widget sin placement no sale en ninguna página, y una placement creada sin status se queda en inactive, que es el valor por defecto.⁠[2]BigCommerce API Reference. Create Placement Además, la región tiene que existir en los archivos del tema que usa la tienda, porque las regiones son huecos que declara el tema.⁠[1]BigCommerce Dev Center. Widgets API Antes de buscar el fallo en la plantilla, comprueba esas dos cosas.

Cómo comprobarlo

  1. Consulta las regiones del tema con el endpoint de regiones de la Widgets API, para la plantilla de página que te interesa. Si la región que usa tu placement no está en la lista, el widget no tiene dónde caer.⁠[1]BigCommerce Dev Center. Widgets API
  2. Revisa la placement: status en active, el template_file correcto, el entity_id del producto o la categoría que esperas y el canal adecuado.⁠[2]BigCommerce API Reference. Create Placement
  3. Abre la página y su código fuente (Ctrl+U en Chrome) y busca data-widget-id. Si no aparece, el problema está en la placement o en la región, no en la plantilla.⁠[1]BigCommerce Dev Center. Widgets API
  4. Si el widget publica datos estructurados, pasa la URL por la prueba de resultados enriquecidos o por un validador de schema.
  5. Cuenta tus placements por plantilla de página antes de escalar a todo el catálogo: el límite es 75 por plantilla.⁠[1]BigCommerce Dev Center. Widgets API

Concepto cercano: app embed de Shopify

El equivalente más cercano en Shopify es el app embed de Shopify. Los dos meten código en la tienda sin editar el tema, pero se colocan de forma distinta. Shopify inserta un app embed antes del cierre de </head> o de </body>, según el destino que declare el bloque, y el comerciante lo enciende en el editor de temas; tras instalar la app viene apagado.⁠[5]Shopify Dev Docs. Configure theme app extensions Un widget de BigCommerce, en cambio, va a la región y a la página que diga su placement, que se crea por API, y puede limitarse a una sola ficha con entity_id.⁠[2]BigCommerce API Reference. Create Placement En los dos casos, lo que de verdad cuenta es lo que sale en el HTML de la página, y eso se comprueba abriéndola.

La guía del widget a la página publicada sigue el camino completo en BigCommerce, y la ruta de publicación por plataforma ordena el resto de términos.

Sinónimos

English
BigCommerce widget, Widgets API
Español
widget de BigCommerce

Fuentes

  1. [1] BigCommerce Dev Center. Widgets API. Consultado el . ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑ ↑
  2. [2] BigCommerce API Reference. Create Placement. Consultado el . ↑ ↑ ↑ ↑ ↑ ↑
  3. [3] BigCommerce Developer Learning. Placements. Consultado el . ↑
  4. [4] Google Search Central. Introduction to structured data markup in Google Search. Consultado el . ↑
  5. [5] Shopify Dev Docs. Configure theme app extensions. Consultado el . ↑

Historial de cambios

  • Primera versión.

Esta definición se publica bajo licencia CC BY 4.0. Puedes reutilizar esta definición citando a Clione con un enlace a esta página.

Haz que los bots entiendan tu catálogo

Clione completa cada ficha de producto con lo que los bots leen mejor: el grafo JSON-LD con sus datos estructurados, la meta description y las preguntas frecuentes. Tú revisas y pulsas Push; después comprobamos tu tienda en vivo para que todo siga publicado.