Bloques HTML: configuración y ayuda
Inicio rápido
- Sube e instala el ZIP de HTML Blocks en Módulos > "Module Manager".
- Abre Bloques HTML > Bloques y crea un bloque con Nombre interno y Contenido traducido.
- Deja Título vacío para mostrar solo contenido y Consentimiento de cookies requerido en Ninguno (siempre mostrar) para un bloque de texto normal.
- Mantén Activo activado y guarda el bloque.
- Añade "Display Location" displayFooter con Diseño contained, o elige otro hook usado por tu tema.
- Abre la página correspondiente de la tienda en cada idioma y confirma que aparezca el bloque.
- Usa Bloques HTML > Plantillas solo si necesitas crear una posición dentro de una plantilla del tema y compruébala con Comprobar estado.
Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.
Manual de configuración
Instalar y crear un bloque
Sube e instala el ZIP de HTML Blocks en Módulos > "Module Manager". Abre Bloques HTML > Bloques. "Configure" abre la configuración del módulo; la página Bloques contiene el editor de contenido.
Crea un bloque con Nombre interno, introduce Contenido para tus idiomas y guarda. Añade una ubicación de visualización para que aparezca. Un bloque guardado sin una colocación activa no tiene posición en la tienda.
Crea bloques con el editor integrado; no se necesita un archivo de modelo adicional.
Editar el contenido del bloque
| Campo | Predeterminado | Cómo usarlo |
|---|---|---|
| Nombre interno | Vacío | Identificador administrativo obligatorio. No se muestra en la tienda. |
| Título | Vacío | Texto traducido opcional encima del contenido. Déjalo vacío para mostrar solo contenido. |
| Etiqueta de título | Sin título / vacío | Opciones: Sin título, h2, h3, h4, h5, span y p. Un Título no vacío con etiqueta vacía sigue apareciendo en un div. Vacía Título para ocultarlo. |
| Consentimiento de cookies requerido | Ninguno (siempre mostrar) | Elige Funcional, Analítica o "Marketing" solo para contenido opcional que deba esperar al consentimiento de esa categoría. |
| Contenido | Vacío | HTML traducido, editado con el editor de texto enriquecido de PrestaShop. |
| Clase CSS | Vacío | Clase o clases de la envoltura exterior. El renderizador conserva letras, números, espacios, guiones bajos y guiones. |
| Activo | Activado | Desactiva todo el bloque sin eliminarlo. |
Para un mensaje de pie de página puedes introducir:
<div class="footer-trust">
<strong>Secure payment</strong>
<span>Pay using a payment method enabled in this shop.</span>
</div>
Establece Nombre interno en Footer - Payment message, deja Título vacío, usa Clase CSS footer-trust-block y mantén Consentimiento de cookies requerido en Ninguno (siempre mostrar) para un mensaje de texto normal.

Asignar ubicaciones de hooks nativos
En el panel de colocación del bloque, elige "Display Location" y Diseño y añade la ubicación. La vista previa visual abre la tienda con marcadores de hooks para inspeccionar las posiciones compatibles. El tema debe renderizar realmente el hook para que aparezca la colocación.
| Opción de colocación | Predeterminado | Efecto |
|---|---|---|
| "Display Location" | Debes elegir un hook | Elige dónde aparece el bloque. El modelo subyacente usa por defecto displayMprHtmlBlock; no sustituye la selección de una ubicación nativa real. |
| Diseño | contained |
Usa el contenedor del tema o elige full-width para contenido del ancho de la ventana. |
| Activo | Activado | Oculta una colocación y mantiene las demás activas. |
| "Sort Order" | Siguiente posición disponible para una nueva colocación de hook | Ordena bloques en la misma ubicación. El valor almacenado predeterminado es 0. |
Puedes reutilizar un bloque en varias ubicaciones. La acción de colocación no permite añadir dos veces el mismo bloque al mismo hook nativo.
Las ubicaciones disponibles incluyen:
| Área | Hooks |
|---|---|
| Inicio | displayHomeIntro, displayHome |
| Producto | displayProductAdditionalInfo, displayAfterProductThumbs, displayFooterProduct, displayReassurance, displayProductTabContent, displayLeftColumnProduct, displayRightColumnProduct |
| Listados | displayHeaderCategory, displayFooterCategory |
| Diseño | displayWrapperTop, displayContentWrapperTop, displayContentWrapperBottom, displayWrapperBottom, displayLeftColumn, displayRightColumn |
| Cabecera | displayBanner, displayNav1, displayNav2, displayTop, displayNavFullWidth |
| Pie de página | displayFooterBefore, displayFooter, displayFooterAfter |
| Carrito y pago | displayShoppingCart, displayShoppingCartFooter, displayExpressCheckout |
| Otros | displayOrderConfirmation1, displayOrderConfirmation2, displayCustomerAccount |
Para un banner de inicio, usa displayHomeIntro, Diseño full-width y una clase adecuada como homepage-seasonal-banner. Para un mensaje de pie de página, usa displayFooter y contained.
Añadir una pestaña de producto
Crea el bloque traducido, establece Título como etiqueta de pestaña y añade displayProductTabContent como ubicación. El módulo proporciona etiqueta y contenido mediante hooks de pestañas de producto. Tu tema debe admitirlos.
Para una pestaña Entrega, usa Nombre interno Product - Delivery Tab y Título Delivery. Añade tu contenido de entrega y guarda. Comprueba la pestaña en una página de producto real, incluida su etiqueta y contenido en cada idioma.
La etiqueta y el contenido de la pestaña de producto siguen el requisito de consentimiento del bloque.
Añadir posiciones con Template Manager
Usa Bloques HTML > Plantillas cuando el tema no tenga un hook nativo adecuado en la posición requerida. Respalda primero el tema. El proceso PHP necesita escritura en los archivos afectados o la ruta de override del tema hijo y en la caché PrestaShop.
- Analiza el tema activo. Los tipos de página compatibles incluyen Producto, Categoría, Listado, Fabricante, Proveedor, Todas las marcas y CMS.
- Revisa archivo, posición y llamada de hook propuestos para ese tipo de página.
- Acepta o inyecta la posición elegida. El gestor puede modificar la plantilla o crear un override extends cuando sea compatible.
- Asigna un bloque existente al perfil de página y elige su diseño y posición de inserción.
- Mantén el perfil activo y guarda sus ajustes.
- Abre una página correspondiente de la tienda y comprueba la ubicación.
El gestor inserta contenido Smarty marcado usando el hook del módulo:
{* MPR_HTMLBLOCK_INJECT *}
{hook h='displayMprHtmlBlock'}
{* /MPR_HTMLBLOCK_INJECT *}
Las llamadas generadas pueden incluir parámetros específicos de página. Consérvalos al usar la llamada sugerida por el gestor. Un desarrollador también puede colocar {hook h='displayMprHtmlBlock'} manualmente, teniendo en cuenta el contexto y las colocaciones previstos.
El perfil está activo por defecto. Tras actualizar el tema, usa Comprobar estado. Si faltan marcadores o la posición está obsoleta, analiza de nuevo antes de reinyectar. Eliminar todo elimina las inyecciones registradas. Usa el gestor para retirar una posición registrada en vez de borrar fragmentos de marcadores a mano.
También existe colocación mediante selectores. Usa hooks nativos o Template Manager para la configuración ordinaria; la colocación por selector depende de un marcado estable del tema.
Configurar contenido dependiente del consentimiento
Para inserciones o scripts opcionales, elige una categoría en Consentimiento de cookies requerido. El módulo emite contenido codificado inerte y lo inserta en el navegador solo cuando el cliente MPR Cookies Revolution proporciona una autorización para esa categoría. Sin decisión, con rechazo o sin un cliente MPRCR utilizable, el contenido condicionado permanece ausente. Retirar el consentimiento elimina el contenido insertado.
Este ciclo se aplica a hooks nativos, colocaciones de plantillas, selectores y pestañas de producto. La categoría propia del bloque también puede ser insuficiente para un script insertado que necesite otra categoría.
Deja el texto esencial sin condicionar. El contenido dependiente del consentimiento puede aparecer tras cargar la página, desplazar el diseño y permanecer ausente para rastreadores sin consentimiento. Usa Ninguno (siempre mostrar) para el contenido que deba estar siempre presente.
No falsifiques manualmente cookies de consentimiento. Los nombres de categoría usados por la integración son functional, analytics y marketing; el módulo de consentimiento gestiona la decisión del visitante.
Adaptar al tema
Abre Bloques HTML > Ajustes > Configuración > Estilos del tema. El editor compartido de estilos parte de los valores detectados del tema y permite sobrescribirlos. Usa "Refresh shop styles" tras cambiar el tema. Usa "Clear custom styles" para volver a los valores detectados.
El módulo asigna fondo, fondo secundario, borde, texto, texto atenuado, radio, sombra y transición a sus tokens de estilo mpr-card. En el editor compartido corresponden a "Primary surface", "Secondary", borde "Normal", texto "Body" y "Muted", "Default radius", "Default shadow" y "Transition". Los overrides existentes de la tienda pueden modificar los valores.
Para CSS local, usa tu Clase CSS y la envoltura estable de contenido:
.mpr-html-block-content img { max-width: 100%; height: auto; }
.mpr-html-block-content table { width: 100%; border-collapse: collapse; }
.footer-trust-block .mpr-html-block-content {
display: flex;
gap: 1rem;
align-items: center;
}
.homepage-seasonal-banner.mpr-html-block-full-width {
padding-top: 2rem;
padding-bottom: 2rem;
}
El editor estándar no tiene campos de programación de inicio/fin, segmentación por grupos de clientes ni por ID de producto/categoría. Usa los interruptores de activación del bloque, colocación y perfil de página según corresponda.
Verificar y resolver problemas
Comprueba el bloque en cada idioma, ubicación asignada y a anchos de móvil y escritorio. Desactiva una colocación para confirmar que las demás sigan disponibles. Desactiva el bloque completo para ocultar todas sus colocaciones.
Para un bloque condicionado, prueba estados sin decisión, autorizado, rechazado y retirado en un navegador con el módulo de consentimiento funcionando. Comprueba etiqueta y panel de la pestaña de producto si usas pestañas.
Si no aparece nada, comprueba Activo del bloque, Activo de la colocación, contenido del idioma, Activo del perfil y si el tema renderiza el hook. Para contenido condicionado, comprueba la decisión de consentimiento y errores JavaScript del navegador. Para una posición inyectada, ejecuta Comprobar estado e inspecciona el archivo de plantilla propuesto.
Si un título sigue visible tras elegir Sin título, vacía Título. La plantilla actual renderiza un título no vacío con etiqueta vacía en un div.
Usa Configuración > Integridad para comprobar y reparar las tablas requeridas del módulo. Si estilos o contenido siguen obsoletos, vacía las cachés PrestaShop y página/CDN correspondientes y comprueba los overrides de plantillas del tema.
Desinstalar
Respalda bloques, colocaciones y tema antes de desinstalar. El módulo retira las inyecciones registradas antes de eliminar menús y llamar a la limpieza del esquema. Si no puede retirarlas, la desinstalación informa de un fallo para que corrijas el acceso a archivos y reintentes. La limpieza elimina las tablas del módulo; exporta antes el contenido que quieras conservar.
Compatibilidad
Requiere PrestaShop 1.6.1 o posterior y PHP 7.1 o posterior.
Preguntas
1
¿El contenido de mis bloques puede afectar a la carga de la página?
Problemas conocidos
14
Las posiciones de bloques guardadas se mostraban mal
Se ignoraba el consentimiento para un servicio concreto
Las comprobaciones del tema se repetían en cada página
La actualización del módulo se detenía en las comprobaciones de instalación
Las traducciones de administración se mostraban mal
Fallaban la administración y la colocación de bloques
Errores de compatibilidad en la detección del tema
Los recursos del tema fallaban con hojas de estilo combinadas
Las páginas públicas del módulo fallaban en algunas instalaciones
Refuerzo de la seguridad
Una instalación nueva podía fallar
Fallaba la edición de posiciones de bloques
Las listas de bloques no recuperaban contenido traducido
Los filtros de listas de bloques devolvían resultados incorrectos
Solicitudes de funcionalidades
8
Implementado
Controles de estilo del tema para bloques HTML
Colocación visual de bloques
Estilos de bloques configurables
Diseños de bloques en el contenedor de página
Administración multilingüe de bloques
Actualizaciones con un clic
Bloques sujetos al consentimiento
Variables de contenido dinámicas
Registro de cambios
v1.6.72026-06-18
- AddedAdd configurable theme styles
- Addedcomplete FR/DE/ES/IT/PL translations
- FixedRepair install schema and release packaging
Versiones anteriores
v1.3.02026-02-02
- AddedUse Bootstrap container for contained blocks, bump to v1.6.0
- Addedself-healing integrity checks for automatic diagnostics and repair
- Addedautomatic theme detection for Classic and Hummingbird style compatibility
- AddedLicense management tab with key management and renewal options
- Addedcomplete FR/DE/ES/IT/PL translations
- FixedSelect title/content from block_lang table, not block
- FixedAdd missing HtmlBlockPlacement ObjectModel class
- Fixedadmin list filters — sorting, searching, and filtering now work correctly on all columns
v1.2.02025-10-28
- Addedfull compatibility with PrestaShop 9.x and Hummingbird theme
- Addedconditional display rules: show/hide blocks by customer group, device type, or date range
- ImprovedWYSIWYG editor integration — TinyMCE 6 with custom toolbar configuration
- Fixedblock not rendering when hook name contained uppercase characters
- Addedshortcode support: {customer_name}, {shop_name}, {current_date} auto-replaced at render
v1.1.02025-09-01
- Addedblock scheduling: set start and end datetimes for seasonal campaigns
- Improvedmulti-shop support — blocks can be scoped to specific shops or shared globally
- FixedXSS sanitization incorrectly stripping valid <iframe> embed codes
- Addedblock preview button in admin list without needing to visit the front-office
v1.0.02025-03-31
- Initialrelease: custom HTML block manager for any PrestaShop hook
- InitialUnlimited blocks per hook with drag-and-drop position ordering
- InitialFull WYSIWYG editor with raw HTML fallback mode
- InitialMulti-language block content with per-language enable/disable toggle
Demo
Prueba el módulo completo antes de comprar
Compra la licencia más tarde y conserva tus ajustes.
- Tu demo de 30 días Pruébalo en tu propia tienda durante 30 días desde la primera instalación.
- Tienda demo lista Explora una tienda demo lista en tu navegador.
- Sin registro Sin cuenta, correo ni dominio de tienda.
Al descargar, aceptas las condiciones de la demo y la política de privacidad.
Al abrir esta demo, acepta los términos de la demo y la política de privacidad.