Blocs HTML : installation et aide

Démarrage rapide

  1. Téléversez et installez le ZIP HTML Blocks dans Modules > "Module Manager".
  2. Ouvrez Blocs HTML > Blocs et créez un bloc avec Nom interne et un Contenu traduit.
  3. Laissez Titre vide pour afficher uniquement le contenu et Consentement aux cookies requis sur Aucun (toujours afficher) pour un bloc de texte ordinaire.
  4. Gardez Actif activé et enregistrez le bloc.
  5. Ajoutez "Display Location" displayFooter avec Mise en page contained, ou choisissez un autre hook utilisé par votre thème.
  6. Ouvrez la page correspondante de la boutique dans chaque langue et confirmez que le bloc apparaît.
  7. Utilisez Blocs HTML > Modèles uniquement pour créer une position dans un template du thème, puis vérifiez-la avec Vérifier le statut.

Nécessite PrestaShop 1.6.1 ou une version ultérieure et PHP 7.1 ou une version ultérieure.

Manuel de configuration

Installer et créer un bloc

Téléversez et installez le ZIP HTML Blocks dans Modules > "Module Manager". Ouvrez Blocs HTML > Blocs. "Configure" ouvre la configuration du module ; la page Blocs contient l'éditeur de contenu.

Créez un bloc avec Nom interne, saisissez le Contenu dans vos langues et enregistrez. Ajoutez un emplacement pour l'afficher. Un bloc enregistré sans placement actif n'a pas de position dans la boutique.

Créez les blocs avec l’éditeur intégré; aucun fichier de modèle supplémentaire n’est nécessaire.

Modifier le contenu du bloc

Champ Valeur par défaut Utilisation
Nom interne Vide Identifiant administratif obligatoire. Il n'apparaît pas dans la boutique.
Titre Vide Texte traduit facultatif au-dessus du contenu. Laissez-le vide pour le contenu seul.
Balise titre Aucun titre / vide Choix : Pas de titre, h2, h3, h4, h5, span et p. Un Titre non vide avec une balise vide reste affiché dans un div. Effacez Titre pour le masquer.
Consentement aux cookies requis Aucun (toujours afficher) Choisissez Fonctionnel, Analytique ou "Marketing" uniquement pour un contenu optionnel devant attendre cette catégorie de consentement.
Contenu Vide HTML traduit, modifié avec l'éditeur de texte enrichi PrestaShop.
Classe CSS Vide Classe ou classes de l'enveloppe extérieure. Le moteur conserve lettres, chiffres, espaces, tirets bas et traits d'union.
Actif Activé Désactive tout le bloc sans le supprimer.

Pour un message de pied de page, vous pouvez saisir :

<div class="footer-trust">
  <strong>Secure payment</strong>
  <span>Pay using a payment method enabled in this shop.</span>
</div>

Définissez Nom interne sur Footer - Payment message, laissez Titre vide, utilisez Classe CSS footer-trust-block et gardez Consentement aux cookies requis sur Aucun (toujours afficher) pour un message textuel ordinaire.

Éditeur de bloc

Affecter des emplacements de hooks natifs

Dans le panneau de placement du bloc, choisissez "Display Location" et Mise en page, puis ajoutez l'emplacement. L'aperçu visuel ouvre la boutique avec des marqueurs de hooks pour examiner les positions prises en charge. Le thème doit réellement afficher le hook pour que le placement apparaisse.

Option de placement Valeur par défaut Effet
"Display Location" Vous devez choisir un hook Choisissez où le bloc apparaît. Le modèle de placement sous-jacent utilise par défaut displayMprHtmlBlock ; cela ne remplace pas le choix d'un véritable emplacement natif.
Mise en page contained Utilise le conteneur du thème, ou choisissez full-width pour un contenu de la largeur de la fenêtre.
Actif Activé Masque un placement en gardant les autres actifs.
"Sort Order" Prochaine position disponible pour un nouveau placement de hook Ordonne les blocs au même emplacement. La valeur stockée par défaut est 0.

Vous pouvez réutiliser un bloc à plusieurs emplacements. L'action de placement ne permet pas d'ajouter deux fois le même bloc au même hook natif.

Les emplacements disponibles comprennent :

Zone Hooks
Accueil displayHomeIntro, displayHome
Produit displayProductAdditionalInfo, displayAfterProductThumbs, displayFooterProduct, displayReassurance, displayProductTabContent, displayLeftColumnProduct, displayRightColumnProduct
Listes displayHeaderCategory, displayFooterCategory
Mise en page displayWrapperTop, displayContentWrapperTop, displayContentWrapperBottom, displayWrapperBottom, displayLeftColumn, displayRightColumn
En-tête displayBanner, displayNav1, displayNav2, displayTop, displayNavFullWidth
Pied de page displayFooterBefore, displayFooter, displayFooterAfter
Panier et commande displayShoppingCart, displayShoppingCartFooter, displayExpressCheckout
Autres displayOrderConfirmation1, displayOrderConfirmation2, displayCustomerAccount

Pour une bannière d'accueil, utilisez displayHomeIntro, Mise en page full-width et une classe adaptée comme homepage-seasonal-banner. Pour un message de pied de page, utilisez displayFooter et contained.

Ajouter un onglet produit

Créez le bloc traduit, définissez Titre comme libellé d'onglet et ajoutez displayProductTabContent comme emplacement. Le module fournit le libellé et le contenu via les hooks d'onglets produit. Votre thème doit prendre ces hooks en charge.

Pour un onglet Livraison, utilisez Nom interne Product - Delivery Tab et Titre Delivery. Ajoutez vos informations de livraison et enregistrez. Vérifiez l'onglet sur une véritable page produit, avec son libellé et son contenu dans chaque langue.

Le libellé et le contenu de l’onglet produit suivent tous deux l’exigence de consentement du bloc.

Ajouter des positions avec Template Manager

Utilisez Blocs HTML > Modèles lorsque le thème n'a pas de hook natif adapté à la position souhaitée. Sauvegardez d'abord le thème. Le processus PHP doit pouvoir écrire dans les fichiers du thème concernés ou le chemin d'override du thème enfant, ainsi que dans le cache PrestaShop.

  1. Analysez le thème actif. Les types de pages pris en charge incluent Produit, Catégorie, Liste, Fabricant, Fournisseur, Toutes les marques et CMS.
  2. Examinez le fichier, la position et l'appel de hook proposés pour ce type de page.
  3. Acceptez ou injectez la position choisie. Le gestionnaire peut modifier le template ou créer un override extends lorsque c'est pris en charge.
  4. Affectez un bloc existant au profil de page et choisissez sa mise en page et sa position d'insertion.
  5. Gardez le profil actif et enregistrez ses paramètres.
  6. Ouvrez une page correspondante de la boutique et vérifiez l'emplacement.

Le gestionnaire insère du contenu Smarty balisé avec le hook du module :

{* MPR_HTMLBLOCK_INJECT *}
{hook h='displayMprHtmlBlock'}
{* /MPR_HTMLBLOCK_INJECT *}

Les appels générés peuvent inclure des paramètres propres à la page. Conservez-les avec l'appel suggéré par le gestionnaire. Un développeur peut aussi placer {hook h='displayMprHtmlBlock'} manuellement, en tenant compte du contexte de page et des placements prévus.

Le profil est actif par défaut. Après une mise à jour du thème, utilisez Vérifier le statut. Si les marqueurs manquent ou si la position est périmée, relancez l'analyse avant de réinjecter. Tout supprimer retire les injections suivies. Utilisez le gestionnaire pour retirer une position suivie plutôt que supprimer des fragments de marqueurs à la main.

Le placement par sélecteur est également pris en charge. Utilisez les hooks natifs ou Template Manager pour une configuration ordinaire ; le placement par sélecteur dépend d'un balisage stable du thème.

Adapter au thème

Ouvrez Blocs HTML > Paramètres > Configuration > Styles du thème. L'éditeur de styles partagé part des valeurs détectées du thème et permet de les remplacer. Utilisez "Refresh shop styles" après un changement de thème. Utilisez "Clear custom styles" pour revenir aux valeurs détectées.

Le module associe arrière-plan, arrière-plan secondaire, bordure, texte, texte atténué, rayon, ombre et transition à ses tokens de style mpr-card. Dans l'éditeur partagé, ils correspondent à "Primary surface", "Secondary", bordure "Normal", texte "Body" et "Muted", "Default radius", "Default shadow" et "Transition". Les overrides existants de la boutique peuvent modifier les valeurs.

Pour du CSS local, utilisez votre Classe CSS et l'enveloppe stable du contenu :

.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;
}

L'éditeur standard n'a pas de champs de planification début/fin, de ciblage par groupe client ni par ID de produit/catégorie. Utilisez selon le cas les interrupteurs d'activation du bloc, du placement et du profil de page.

Vérifier et dépanner

Vérifiez le bloc dans chaque langue, à chaque emplacement affecté et aux largeurs téléphone et bureau. Désactivez un placement pour confirmer que les autres restent disponibles. Désactivez tout le bloc pour masquer tous ses placements.

Pour un bloc conditionné, testez les états indécis, accordé, refusé et retiré dans un navigateur où le module de consentement fonctionne. Vérifiez le libellé et le panneau de l'onglet produit si vous utilisez des onglets.

Si rien n'apparaît, vérifiez Actif du bloc, Actif du placement, contenu de langue, Actif du profil et affichage du hook par le thème. Pour un contenu conditionné, vérifiez la décision de consentement et les erreurs JavaScript du navigateur. Pour une position injectée, lancez Vérifier le statut et examinez le fichier template proposé.

Si un titre reste visible après avoir choisi Pas de titre, effacez le champ Titre. Le template actuel affiche un titre non vide avec une balise vide dans un div.

Utilisez Paramètres > Intégrité pour vérifier et réparer les tables requises du module. Si styles ou contenus restent périmés, videz les caches PrestaShop et page/CDN concernés et vérifiez les overrides des templates du thème.

Désinstaller

Sauvegardez blocs, placements et thème avant de désinstaller. Le module retire les injections de templates suivies avant de supprimer les entrées de menu et d'appeler le nettoyage du schéma. S'il ne peut pas retirer les injections, la désinstallation signale un échec pour permettre de corriger l'accès aux fichiers et réessayer. Les tables du module sont supprimées par le nettoyage du schéma ; exportez d'abord les contenus à conserver.

Compatibilité

Nécessite PrestaShop 1.6.1 ou une version ultérieure et PHP 7.1 ou une version ultérieure.

Questions

1

Le contenu de mes blocs peut-il affecter le chargement des pages ?

HTML Blocks affiche le HTML que vous enregistrez. Les images volumineuses, les vidéos intégrées et les scripts tiers peuvent ajouter des téléchargements ou du travail d’exécution. Les performances dépendent donc des blocs et médias de chaque page. Limitez la taille des médias et vérifiez les pages concernées après modification.

Problèmes connus

14

Les emplacements de blocs enregistrés s'affichaient mal

RésoluMis à jour :
Corrigé dans : 1.12.12
Les emplacements existants dans les modèles pouvaient ne plus s'afficher, tandis que les blocs insérés pouvaient perdre leur ordre ou exécuter des scripts plusieurs fois.

Le consentement propre à un service était ignoré

RésoluMis à jour :
Corrigé dans : 1.12.12
Les blocs soumis au consentement ne respectaient pas systématiquement l'autorisation donnée par un visiteur pour un service précis.

Les contrôles du thème se répétaient sur chaque page

RésoluMis à jour :
Corrigé dans : 1.12.12
Un thème déjà confirmé pouvait encore déclencher une requête supplémentaire de ressources du thème à chaque consultation de page.

La mise à jour du module s'arrêtait aux contrôles d'installation

RésoluMis à jour :
Corrigé dans : 1.12.12
La mise à jour du module pouvait s'arrêter et être annulée lors de ses contrôles de base de données.

Les traductions de l'administration s'affichaient mal

RésoluMis à jour :
Corrigé dans : 1.12.12
Les textes d'administration du module pouvaient rester en anglais ou afficher des échappements incorrects dans les langues traduites.

Échec de l'administration et du placement des blocs

RésoluMis à jour :
Corrigé dans : 1.11.1
L'ouverture de l'administration des blocs ou l'affichage de blocs injectés pouvait échouer faute de prise en charge requise des blocs.

Erreurs de compatibilité de la détection du thème

RésoluMis à jour :
Corrigé dans : 1.11.0
Les pages de blocs pouvaient échouer lorsqu'un autre module installé fournissait un ancien composant de détection du thème.

Échec des ressources du thème avec les feuilles de style regroupées

RésoluMis à jour :
Corrigé dans : 1.9.2
Les ressources de détection du thème ne fonctionnaient pas toujours lorsque PrestaShop regroupait les ressources de la boutique.

Les pages publiques du module échouaient sur certaines installations

RésoluMis à jour :
Corrigé dans : 1.9.2
Les requêtes des pages publiques du module pouvaient échouer à cause de noms de pages incohérents.

Renforcement de la sécurité

RésoluMis à jour :
Corrigé dans : 1.9.2
Renforcement de la sécurité.

Une nouvelle installation pouvait échouer

RésoluMis à jour :
Corrigé dans : 1.6.7
Le module pouvait ne pas s'installer car ses prérequis d'installation étaient incomplets.

Échec de la modification des emplacements de blocs

RésoluMis à jour :
Corrigé dans : 1.6.5
La gestion des emplacements de blocs pouvait échouer car la prise en charge nécessaire des emplacements manquait.

Les listes de blocs ne récupéraient pas le contenu traduit

RésoluMis à jour :
Corrigé dans : 1.6.5
L'administration des blocs pouvait ne pas récupérer les titres et contenus enregistrés dans les données traduites des blocs.

Les filtres des listes de blocs renvoyaient de mauvais résultats

RésoluMis à jour :
Corrigé dans : 1.6.5
Le filtrage des listes d'administration n'appliquait pas systématiquement les valeurs de filtre sélectionnées.

Demandes de fonctionnalités

8

Implémenté

Réglages de style pour les blocs HTML

Implémenté
L’onglet de styles du thème permet d’ajuster les couleurs, bordures, coins arrondis et ombres des blocs HTML. Ces réglages du module permettent d’adapter les blocs à l’apparence de la boutique.

Placement visuel des blocs

Implémenté
Choisissez les positions des blocs avec un sélecteur visuel et gérez leurs emplacements dans les modèles du thème ou les onglets produit.

Styles de blocs configurables

Implémenté
Configurez le style des blocs pour l'adapter au thème de la boutique.

Blocs dans le conteneur de page

Implémenté
Affichez les blocs délimités à l'aide du conteneur de page du thème.

Administration multilingue des blocs

Implémenté
Utilisez les textes d'administration du module en allemand, espagnol, français, italien et polonais.

Mises à jour en un clic

Implémenté
Mettez le module à jour depuis sa page d'administration.

Blocs soumis au consentement

Implémenté
Associez les blocs à des catégories de cookies et activez-les dans le navigateur après le consentement requis, y compris sur les pages en cache.

Variables de contenu dynamiques

Implémenté
Remplacez les variables de contenu configurées par leurs valeurs dans les titres et contenus de blocs rédigés par l'équipe, aux emplacements pris en charge.

Journal des modifications

v1.6.72026-06-18

  • AddedAdd configurable theme styles
  • Addedcomplete FR/DE/ES/IT/PL translations
  • FixedRepair install schema and release packaging
Versions précédentes

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

Testez le module complet avant d'acheter

Achetez la licence plus tard et gardez vos réglages.

  • Votre démo de 30 jours Testez-le sur votre propre boutique pendant 30 jours à partir de la première installation.
  • Boutique de démo prête Découvrez une boutique de démo prête dans votre navigateur.
  • Sans inscription Ni compte, ni e-mail, ni domaine de boutique requis.
Lancer la boutique de démo

En téléchargeant, vous acceptez les conditions de la démo et la politique de confidentialité.

En ouvrant cette démo, vous acceptez les conditions de la démo et la politique de confidentialité.

Chargement...
Retour en haut