PARTIE V — Administration et maintenance CHAPITRE 25 — Configuration avancée (constantes) Le module expose une vingtaine de constantes Dolibarr qui permettent d'ajuster son comportement. Ce chapitre les classe par catégorie d'usage avec les valeurs typiques. Sites gérés Constante Description INFRASSTUDIO_MANAGED_SITES CSV des identifiants de sites gérés. Exemple : 1,2,5 . INFRASSTUDIO_SITE__MEDIA_MODE Mode média par site. native (par défaut) ou module . INFRASSTUDIO_SITE__BLOG_INDEX_PAGE Identifiant de la page d'index du blog (active l'assistant « + Nouvel article »). INFRASSTUDIO_SITE__DOCROOT Surcharge du docroot Apache pour ce site spécifique. Portabilité du système de fichiers Pour les hébergements aux configurations non standards : Constante Description INFRASSTUDIO_DOCROOT_PATTERN Modèle de chemin partagé utilisant le marqueur {ref} . Exemple : /srv/sites/{ref} . INFRASSTUDIO_TEMPLATE_EXTRA_DIR Dossier supplémentaire à scanner pour les gabarits de page. Note — Cascade de résolution — Pour le docroot d'un site, l'ordre de recherche est : INFRASSTUDIO_SITE__DOCROOT, puis INFRASSTUDIO_DOCROOT_PATTERN, puis le repli sur /var/www/. Catalogue produit Constante Description INFRASSTUDIO_WEBSITE_KEY Référence du site cible des wrappers solution. INFRASSTUDIO_PUBLIC_DOCROOT Docroot Apache absolu où écrire les wrappers. INFRASSTUDIO_PRODUCT_UNIVERS_MAP Surcharge JSON de la cartographie catégorie vers univers. INFRASSTUDIO_TRANSLATABLE_PRODUCT_FIELDS CSV de slugs de champs personnalisés à déclarer comme traduisibles, en complément du registre par défaut. INFRASSTUDIO_TRANSLATABLE_PRODUCT_FIELDS_JSON Surcharge JSON complète du registre. INFRASSTUDIO_SITE__WRAPPER_PREFIX Préfixe des wrappers (par défaut solution- ). INFRASSTUDIO_SITE__WRAPPER_TEMPLATE_PAGEURL Slug du gabarit (par défaut solution-detail ). Apparence du Studio Constante Valeurs Par défaut INFRASSTUDIO_UI_THEME light , dark light INFRASSTUDIO_UI_ACCENT indigo , ochre , plum , forest indigo Multilingue côté gabarits Constante Description INFRASSTUDIO_LANG_ISO Force la langue active. Définie dynamiquement par les gabarits. INFRASSTUDIO_LANG_COOKIE Nom du cookie de persistance de la langue (par défaut infras_lang ). INFRASSTUDIO_LANG_MAP_JSON Surcharge de la cartographie ISO2 vers locale (exemple : {"en":"en_GB"} ). INFRASSTUDIO_BLOG_FALLBACK_IMAGE Image par défaut affichée lorsqu'un article ne possède pas d'image principale. Compatibilité et débogage Constante Description INFRASSTUDIO_DOL_VERSION Version de Dolibarr lors de l'activation du module. Géré automatiquement. INFRASSTUDIO_MAIN_VERSION Version du module. Géré automatiquement. INFRASSTUDIO_DISABLE_CHECK_VERSION_MIN À régler sur 1 pour contourner la vérification de version Dolibarr minimale (usage avancé). Définir une constante Méthode A — Via l'administration du module La majorité des constantes sont accessibles dans Outils → InfraSStudio → Configuration, dans la section dépliable « Réglages avancés ». Le formulaire valide les saisies et affiche des avertissements non bloquants en cas d'incohérence. Méthode B — Via SQL INSERT INTO llx_const (name, value, type, visible, entity) VALUES ('INFRASSTUDIO_DOCROOT_PATTERN', '/srv/sites/{ref}', 'chaine', 0, 2); Méthode C — Via PHP en ligne de commande php -r " require 'htdocs/master.inc.php'; \$conf->entity = 2; dolibarr_set_const(\$db, 'INFRASSTUDIO_DOCROOT_PATTERN', '/srv/sites/{ref}', 'chaine', 0, '', 2); " Vérifier la configuration Après chaque modification de constante, lancez la page Diagnostic du module. Elle valide en direct l'existence des chemins, la cohérence des modèles, etc. Onglet Sites — administration centralisée L'onglet Outils → InfraS → InfraSStudio → Configuration → Sites est le point d'entrée canonique pour piloter chaque site Dolibarr Website pris en charge par le module. Il consolide en une seule page la liste des sites détectés, leur statut (géré / non géré), le nombre de pages et de slots qu'ils contiennent, la date de dernière édition et les actions disponibles pour chacun : configurer, voir le site public, exporter en ZIP, restaurer depuis un ZIP, nettoyer. Le tableau s'alimente à la volée à partir de llx_website, llx_website_page et llx_infrasstudio_slot. Aucune configuration préalable n'est nécessaire : tout site Dolibarr Website existant apparaît automatiquement dans la liste, qu'il soit déjà géré par InfraSStudio ou non. Configurer automatiquement un site Pour un site qui n'est pas encore géré par le module (par exemple un site Dolibarr Website existant créé avant l'activation d'InfraSStudio), le bouton « Configurer automatiquement » exécute en un clic la cascade d'opérations habituellement éparpillées dans plusieurs pages d'administration : Détection du docroot Apache effectif en suivant la cascade de résolution en cinq niveaux : INFRASSTUDIO_SITE__DOCROOT → INFRASSTUDIO_DOCROOT_PATTERN → entrée dans /etc/apache2/sites-enabled/ → réutilisation d'un docroot voisin → repli /var/www/. Pose des constantes INFRASSTUDIO_WEBSITE_KEY et INFRASSTUDIO_PUBLIC_DOCROOT. Ajout du site à INFRASSTUDIO_MANAGED_SITES pour qu'il apparaisse dans le Studio. Patch des pageN.tpl.php pour invoquer le moteur de slots. Scan initial des tokens {{slot:...}} présents dans le HTML et peuplement de llx_infrasstudio_slot. L'opération est idempotente — un site déjà configuré ne sera pas écrasé, et un re-clic ne pose aucun problème. Pratique pour aligner d'un coup une instance qui contient déjà plusieurs sites Dolibarr Website. Voir mon site public Le bouton « Voir mon site public » ouvre dans un nouvel onglet l'URL publique réelle du site, telle qu'un visiteur la verrait. L'URL est résolue dynamiquement à partir du docroot configuré et du virtual host Apache associé, ce qui évite d'avoir à mémoriser ou retaper l'adresse. Le même bouton est également présent dans la barre supérieure de l'éditeur Studio pour basculer en un clic entre l'édition et le rendu live. Sitemap automatique Chaque site géré dispose d'un fichier sitemap.xml régénéré automatiquement à chaque modification de page. Pas de cron à configurer, pas de bouton à cliquer : la classe StudioSitemap est appelée à la volée chaque fois qu'un slot est publié, qu'une page passe de brouillon à publié ou inversement, ou qu'une page est dupliquée ou supprimée. Le sitemap respecte les bonnes pratiques SEO : les pages en brouillon sont exclues, les pages sœurs (canon + traductions) sont regroupées avec leurs . Exporter un site en ZIP Le bouton « Exporter en ZIP » télécharge une archive complète des données InfraSStudio du site sélectionné, indépendamment du dump SQL global de Dolibarr. L'archive contient : Tous les slots du site (canonique + overrides de locale) au format SQL idempotent. Toutes les configurations de formulaire scopées au site ( fk_website=), avec leur descripteur JSON complet. Les médias InfraSStudio rattachés au site, fichiers binaires inclus, avec leurs alts par locale. Un manifest qui décrit le contenu de l'archive et la version du module qui l'a produite. Cette archive sert principalement à : Cloner un site d'une instance Dolibarr vers une autre (recette → production, démo → client). Sauvegarder ponctuellement un état stable avant une refonte risquée. Archiver un site en fin de vie sans perdre la trace de sa configuration. Restaurer un site depuis un ZIP Le bouton « Restaurer depuis un ZIP » applique un export précédemment téléchargé sur le site sélectionné. La restauration est idempotente et préserve par défaut les éditions utilisateur déjà présentes : Les slots déjà saisis ne sont pas écrasés, sauf si l'option Forcer le remplacement est cochée. Les médias dont la ref existe déjà sont conservés, sauf en mode force. Les configurations de formulaire en conflit (même name) sont signalées et l'admin choisit explicitement de les fusionner ou de les remplacer. Note — Cleanup automatique — Quand un site Dolibarr Website est supprimé via l'interface native (Module Site Internet → Supprimer), un hook InfraSStudio déclenche automatiquement le nettoyage en cascade des données associées : slots, médias, configurations de formulaire scopées au site, wrappers solution-*.php, retrait de INFRASSTUDIO_MANAGED_SITES. Aucune donnée orpheline ne reste en base. Le helper infrasstudio_cleanup_after_website_delete() est également exposé pour les scripts CLI de migration ou de réinitialisation d'instance. Récapitulatif Vous savez désormais : Identifier les vingt constantes du module classées par usage. Comprendre la cascade de résolution du docroot. Configurer le catalogue produit (référence du site, docroot, préfixe, gabarit). Personnaliser l'apparence (thème, couleur d'accent). Définir une constante via l'administration, SQL ou ligne de commande. Valider une configuration via la page Diagnostic. CHAPITRE 26 — Diagnostic et résolution des incidents Lorsqu'un comportement inattendu apparaît, ce chapitre vous guide dans la résolution. Le réflexe à adopter est simple : commencer par la page Diagnostic, lire les journaux, et n'envisager une action plus radicale qu'en dernier recours. Toujours commencer par la page Diagnostic Outils → InfraSStudio → onglet Diagnostic. Le contrôle visuel (vert, orange, rouge) couvre : Versions de Dolibarr et de PHP, présence des extensions PHP requises. État du module et de sa dépendance Website. Présence des cinq tables SQL du module. Permissions d'écriture sur DOL_DATA_ROOT. Hooks chargés, présence du trigger, déclaration des tâches planifiées. Pour chaque site géré : résolution du docroot, mode média, dossier de données. À retenir — 80 % des incidents signalés sont en réalité une ligne rouge ou orange du Diagnostic ignorée. Demandez systématiquement à toute personne qui rapporte un dysfonctionnement de joindre d'abord cette capture. Lire les journaux Dolibarr Le module utilise dol_syslog() pour tracer les opérations sensibles, avec le préfixe infrasstudio. Emplacement htdocs/documents/dolibarr.log Filtrer les entrées du module # Toutes les entrées du module grep "infrasstudio" htdocs/documents/dolibarr.log # Uniquement les erreurs grep "infrasstudio.*LOG_ERR" htdocs/documents/dolibarr.log # Suivi en temps réel pendant qu'un utilisateur reproduit le problème tail -f htdocs/documents/dolibarr.log | grep infrasstudio Conseil — Activer le niveau DEBUG — Pour traquer un incident subtil, augmentez temporairement le niveau de journalisation Dolibarr (Configuration → Sécurité → Système) à LOG_DEBUG. Pensez à le rabaisser une fois le diagnostic terminé. Incidents fréquents et solutions Incident Cause probable Solution Le menu InfraS n'apparaît pas dans Outils L'utilisateur ne possède pas la permission paramMenu. Onglet Permissions de l'utilisateur, cocher paramMenu dans la section InfraSStudio. Les modifications ne sont pas visibles publiquement Modifications restées en brouillon sans être publiées. Cliquer sur « Publier les modifications » dans la barre d'outils. Voir le Chapitre 12. L'aperçu affiche une erreur 404 La page possède un type_container other, menu ou setup, et le filtre du noyau la bloque. Le module corrige automatiquement ce comportement depuis la version 1.8.7. Vérifiez que vous êtes en version 1.8.7 ou supérieure. Erreur réseau dans l'éditeur (erreur AJAX) Session Dolibarr expirée, ou avertissement PHP émis avant les en-têtes HTTP. Recharger la page Studio (F5). Si le problème persiste, consultez dolibarr.log pour identifier l'erreur PHP réelle. Les images téléversées ne s'affichent pas publiquement Lien symbolique medias manquant ou cassé en mode native. Recréer le lien symbolique avec ln -sfn ..., ou basculer le site en mode média module. Les wrappers solution-*.php ne se génèrent pas INFRASSTUDIO_WEBSITE_KEY ou INFRASSTUDIO_PUBLIC_DOCROOT non configurées. Configurer ces deux constantes dans Outils → InfraSStudio → Configuration → Wrappers. Les slots ne se mettent pas à jour après modification du tpl.php Le scanner n'a pas été lancé. Outils → InfraSStudio → Contenu → bouton « Rescanner ». Ou en ligne de commande : php scripts/rescan_slots.php . Réinitialiser le module Si le module se trouve dans un état incohérent (utilisation impossible, erreurs SQL persistantes), vous pouvez le réinitialiser : Configuration → Modules → InfraSStudio → cliquer sur Désactiver. Le module sauvegarde toutes ses constantes sous le préfixe INFRASSTUDIOBKP_. Cliquer à nouveau sur Activer. Le module restaure ses constantes, recrée les tables manquantes et réenregistre les hooks. Aucune perte de données — Les valeurs de slot, les médias et les traductions sont conservés dans leurs tables respectives. La désactivation puis réactivation ne touche qu'au descripteur et aux hooks. Demander de l'aide Si rien ne fonctionne, préparez ces trois informations avant toute demande d'aide : Capture d'écran de la page Diagnostic complète. Les vingt dernières lignes de dolibarr.log filtrées sur infrasstudio. La version exacte du module et de Dolibarr (visibles en haut de la page Diagnostic). Avec ces trois éléments, n'importe quel développeur connaissant le module peut établir un diagnostic en quelques minutes. Récapitulatif Vous savez désormais : Lancer la page Diagnostic comme premier réflexe. Lire et filtrer les journaux Dolibarr. Identifier les sept incidents fréquents et leurs solutions. Réinitialiser le module proprement (désactivation et réactivation). Préparer un rapport d'incident efficace en trois étapes. CHAPITRE 27 — Permissions et rôles utilisateur Le module expose sept permissions distinctes, attribuables finement aux utilisateurs Dolibarr. Ce chapitre vous indique les attributions à privilégier en fonction des rôles, dans l'esprit du principe de moindre privilège. Les sept permissions du module Permission Ce qu'elle autorise paramMenu Voir l'entrée InfraS dans le menu Outils. Sans cette permission, le module est invisible pour l'utilisateur. readContent Consulter le contenu (pages, slots, médias) en lecture seule. Aucune modification possible. editContent Modifier les valeurs des slots (textes, images, couleurs, etc.) en brouillon. editTranslations Saisir et modifier les traductions (slots et fiches produit). editMedias Téléverser, modifier et supprimer des médias dans la bibliothèque. publish Publier les brouillons en attente, mettre en ligne ou retirer des pages. admin Configurer le module (sites gérés, constantes), supprimer des pages, accéder au Diagnostic. Note — Un utilisateur portant le drapeau Dolibarr « Super-administrateur » contourne toutes les permissions du module. Ce comportement est volontaire pour rester cohérent avec la philosophie de Dolibarr. Pour tester finement les permissions, utilisez un compte non administrateur. Les rôles types Plutôt que d'attribuer les permissions une à une à chaque utilisateur, il est préférable de définir des profils que vous appliquerez ensuite aux comptes. Cinq profils types couvrent la grande majorité des cas : Rôle / Profil Types de permission Autorisation Lecteur Personne qui consulte le site sans le modifier (commercial, support, juriste relisant la conformité). paramMenu Oui readContent Oui Toutes les autres Non Rédacteur Personne qui modifie les contenus mais ne publie pas seule (mise en place d'un circuit de relecture). paramMenu Oui readContent Oui editContent Oui editMedias Oui publish Non (pas de publication directe) Traducteur Personne qui n'effectue que des traductions (souvent un prestataire externe). paramMenu Oui readContent Oui editTranslations Oui Toutes les autres Non Rédacteur autonome Personne qui rédige et publie seule (équipe restreinte, indépendant, etc.). paramMenu Oui readContent Oui editContent Oui editMedias Oui editTranslations Oui publish Oui Administrateur du module Développeur de l'agence ou responsable technique du site. Toutes les permissions Oui Attribuer les permissions à un utilisateur Rendez-vous dans Accueil → Utilisateurs et Groupes → Liste des utilisateurs. Sélectionnez l'utilisateur cible. Cliquez sur l'onglet Permissions. Faites défiler jusqu'à la section InfraSStudio. Cochez les permissions à attribuer. Enregistrez. Conseil — Utilisez les groupes — Si vous administrez plusieurs rédacteurs, créez un groupe Dolibarr (par exemple « InfraS Rédacteurs ») et attribuez-lui les permissions. Les utilisateurs ajoutés au groupe en héritent automatiquement. Mettre en place un circuit de relecture Voici comment exploiter les permissions pour un circuit de relecture propre : Acteur Permissions Tâche Rédacteur readContent + editContent + editMedias Modifie les slots et prépare les brouillons. Relecteur readContent Consulte les brouillons dans l'aperçu, valide ou demande des modifications. Publicateur readContent + publish Publie les brouillons après validation du relecteur. Récapitulatif Vous savez désormais : Identifier les sept permissions du module. Définir cinq rôles types (lecteur, rédacteur, traducteur, rédacteur autonome, administrateur). Attribuer les permissions à un utilisateur ou à un groupe Dolibarr. Mettre en place un circuit de relecture à plusieurs. CHAPITRE 28 — Mise à jour du module Les mises à jour du module s'effectuent sans interruption visible côté visiteurs. Ce chapitre présente la procédure standard et les précautions à observer. Avant la mise à jour — liste de contrôle Sur une instance de production, ne sautez jamais ces étapes : Sauvegarde complète de la base Dolibarr (mysqldump). Sauvegarde du dossier htdocs/custom/infrasstudio/ existant. Sauvegarde des données : DOL_DATA_ROOT//website/ et medias/. Lecture du changelog de la nouvelle version pour repérer d'éventuelles modifications majeures. Test de la mise à jour sur une instance de pré-production lorsque c'est possible. Procédure standard Étape 1 — Désactiver le module Configuration → Modules → InfraSStudio → cliquer sur Désactiver. Effet de la désactivation — Les constantes du module sont sauvegardées sous le préfixe INFRASSTUDIOBKP_. Les tables et leurs données restent intactes. L'entrée Outils → InfraS disparaît. Étape 2 — Remplacer les fichiers Trois méthodes selon votre environnement : Via l'interface Dolibarr Configuration → Modules → bouton « Déployer / installer un module ». Sélectionner la nouvelle archive module_infrasstudio-X.Y.Z.zip. Confirmer le remplacement. Via SSH ou FTP cd /var/www/dolibarr/htdocs/custom/ mv infrasstudio infrasstudio.old.20260504 unzip /tmp/module_infrasstudio-1.9.0.zip chown -R www-data:www-data infrasstudio/ Via Git cd /var/www/dolibarr/htdocs/custom/infrasstudio git fetch --tags git checkout v1.9.0 Étape 3 — Réactiver le module Configuration → Modules → InfraSStudio → cliquer sur Activer. Le module exécute alors : la restauration des constantes INFRASSTUDIOBKP_ vers INFRASSTUDIO_, l'application des migrations SQL nécessaires (fichiers sql/update_X.Y.Z_*.sql), le réenregistrement des hooks et triggers, la mise à jour de la constante INFRASSTUDIO_MAIN_VERSION. Étape 4 — Vérifier avec la page Diagnostic Outils → InfraSStudio → Diagnostic. L'ensemble des contrôles doit être au vert. La section Schéma SQL confirme en particulier que toutes les tables sont à jour. Étape 5 — Test fonctionnel Reproduisez trois actions courantes : Ouvrir une page existante dans l'éditeur — l'aperçu doit se charger. Modifier un slot — l'enregistrement automatique doit fonctionner (indicateur « Enregistré »). Publier les modifications — vérifier que la version publique reflète bien la modification. Lire le changelog avant chaque mise à jour Le changelog est accessible : Dans le module : htdocs/custom/infrasstudio/docs/changelog.xml. Dans l'administration : Outils → InfraSStudio → onglet Changelog. Lire les types de changement Type Signification fix Correction d'une anomalie. chg Modification d'un comportement existant. add Nouvelle fonctionnalité ou option. Numérotation X.Y.Z Composant Cas de modification X (majeur) La version Dolibarr minimale prise en charge change. Y (mineur) Une nouvelle fonctionnalité ou option utilisateur est ajoutée. Z (correctif) Corrections et modifications internes uniquement. Fréquence des mises à jour Recommandations : Correctif (Z) : à appliquer rapidement, surtout si l'anomalie corrigée vous concerne. Mineur (Y) : à appliquer dans les une à deux semaines, après lecture du changelog. Majeur (X) : à tester en pré-production, à planifier dans une fenêtre de maintenance, à communiquer à votre équipe. Retour en arrière Si une mise à jour pose problème : Désactivez le module. Restaurez le dossier infrasstudio.old./ sauvegardé à l'étape 2. Si une migration SQL a été appliquée, restaurez la base depuis le dump précédent. Réactivez le module. Avertissement — Restauration SQL — Une migration ajoute parfois des colonnes ou des tables. Si vous restaurez le dump pré-migration sans restaurer également les fichiers, le module détectera des structures manquantes et s'interrompra. Synchronisez toujours fichiers et base de données ensemble. Récapitulatif Vous savez désormais : Préparer une mise à jour avec une liste de contrôle (sauvegarde base, fichiers, données). Suivre la procédure en cinq étapes (désactiver, remplacer, réactiver, diagnostic, test). Lire le changelog et comprendre la numérotation X.Y.Z. Appliquer la fréquence appropriée selon le type de version. Revenir en arrière en cas d'incident. Fin de la Partie V — Vous savez gérer le module en tant qu'administrateur : permissions, configuration avancée, résolution des incidents, mises à jour. Le module est désormais entre des mains compétentes. La Partie VI propose la référence pure du module : tableaux exhaustifs des constantes, des shortcodes, des hooks, des tables SQL et des scripts en ligne de commande. À garder à portée pour une consultation rapide. Templates de sites préfabriqué Les templates de sites préfabriqués transforment InfraSStudio en kit complet de mise en route. En quelques minutes, un site Dolibarr Website vide devient un site corporate ou éditorial opérationnel, avec catalogue produits, blog, formulaire de contact et neuf pages cousues sur un design moderne. Aucun code à toucher, aucune ligne de configuration à éditer : Dolibarr crée le site, et InfraSStudio applique le reste en arrière-plan dès le prochain chargement d'une page admin. Deux univers de design Le module livre deux templates aux esthétiques opposées, conçus pour deux types de positionnement : Vibrant pour une présence corporate énergique, Editorial pour un ton de revue ou de cabinet de conseil. Chaque template embarque le même socle fonctionnel — neuf pages, un catalogue produit, un blog dynamique, un formulaire de contact branché sur le pipeline InfraSStudio — mais sa charte typographique et sa palette diffèrent radicalement. Template Design Cible Vibrant website_infrasstudio-vibrant.zip Dégradés violet → orange, typographie Inter avec touches manuscrites Caveat, hero plein écran, CTA en pilule, cartes avec ombre douce. B2C, agences, lancements produit, communication énergique. Editorial website_infrasstudio-editorial.zip Fond sombre charcoal, typographie Playfair Display serif, layouts asymétriques, accents orange minimalistes. Cabinet de conseil, publication éditoriale, contenu premium, signature graphique forte. Les neuf pages livrées Chaque template fournit un site complet et cohérent, prêt à être rempli avec votre propre contenu. Les pages sont déjà reliées entre elles par la navigation, et le catalogue ainsi que le blog sont dynamiques : ils s'alimentent automatiquement depuis les produits Dolibarr et les articles publiés, sans aucune édition de gabarit. Page Rôle menu Navigation principale (logo, cinq liens, CTA). footer Pied de page en quatre colonnes avec réseaux sociaux. index Page d'accueil : hero, trois services mis en avant, extrait dynamique du catalogue. about Page « À propos » : histoire de l'entreprise et trois valeurs. catalog Catalogue produit dynamique, alimenté depuis llx_product avec filtres par univers et type. product-detail Fiche produit unique servie automatiquement par les wrappers solution-.php . blog Index blog : liste dynamique des articles publiés. blog-welcome Article de démonstration prêt à éditer, sert d'exemple pour le rédacteur. contact Page contact avec un formulaire branché sur le pipeline complet (tiers + ticket + notifications). Chaque template comporte une soixantaine de slots éditables, fournis avec leur valeur par défaut en français et leur traduction anglaise pré-remplie via l'attribut default_en=.... Un rédacteur peut écraser n'importe quelle valeur sans toucher au HTML. Importer un template Les templates apparaissent dans la liste native des modèles de site de Dolibarr — aucun outil tiers n'est nécessaire. La procédure est identique à celle d'un template officiel Dolibarr : Ouvrir Module Site Internet → Nouveau site → Choisir un modèle. Sélectionner website_infrasstudio-vibrant ou website_infrasstudio-editorial dans la galerie. Donner un identifiant au site (par exemple monsite) et valider. Dolibarr décompresse le ZIP, crée le site dans llx_website, dépose les neuf pages dans llx_website_page et copie les SVG placeholders dans les médias du site. À ce stade, le site existe mais n'est pas encore exploitable : il faut que la pipeline d'auto-configuration tourne pour que tout soit aligné. Note — Modèles non visibles — Si vous ne voyez pas les templates InfraSStudio dans la galerie, ouvrez Outils → InfraS → InfraSStudio → Configuration et cliquez sur « Rafraîchir les modèles ». Le module recompresse alors les dossiers doctemplates/websites/ et les place dans DOL_DATA_ROOT/doctemplates/websites/ où Dolibarr les scanne pour la galerie. Utile après une mise à jour du module ou un déplacement de fichiers. Auto-configuration plug-and-play Au prochain chargement d'une page d'administration Dolibarr (par exemple l'éditeur du site qui s'ouvre juste après l'import), un hook InfraSStudio détecte que le site embarque un manifest de seed encore non appliqué. La pipeline d'auto-configuration se déclenche alors automatiquement et exécute sept étapes consécutives en quelques secondes : Étape Effet Catégories Crée les catégories produit nécessaires si elles n'existent pas (lookup idempotent sur le label). Produits démo Crée six produits factices catégorisés, avec traductions FR/EN, badges, extrafields. Permet au catalogue d'être immédiatement peuplé. Médias Enregistre les SVG placeholders dans llx_infrasstudio_media avec leur alt par locale. Constantes Pose INFRASSTUDIO_WEBSITE_KEY et INFRASSTUDIO_PUBLIC_DOCROOT avec auto-détection du docroot Apache (cascade en cinq niveaux, voir le chapitre Constantes). Site géré Ajoute le site à INFRASSTUDIO_MANAGED_SITES pour qu'il apparaisse dans le Studio. Patch des gabarits Insère dans chaque pageN.tpl.php l'invocation du moteur de slots, avant le rendu final de Dolibarr. Scan des slots + wrappers Détecte les tokens {{slot:...}} dans le HTML, peuple llx_infrasstudio_slot , génère les wrappers solution-.php . Un message setEventMessages de Dolibarr confirme la fin de l'opération : « InfraSStudio : site auto-configuré ». Le site est désormais consultable en public, avec ses slots résolus en valeurs par défaut, son catalogue alimenté, son formulaire de contact opérationnel et ses informations de société automatiquement injectées (nom, email, adresse) à la place des données génériques du template. Note — Filet de sécurité — Si l'import a été fait via la ligne de commande ou l'API REST (cas où le hook doActions ne se déclenche pas), un cron horaire scanne INFRASSTUDIO_MANAGED_SITES et applique le seed sur tout site dont le manifest n'a pas encore été appliqué. La pipeline se déclenche également à chaque connexion d'un administrateur, ce qui couvre les imports réalisés sans interaction admin immédiate. Personnaliser après import Une fois le site auto-configuré, deux interfaces se complètent pour la personnalisation. Éditeur Studio L'éditeur Studio (Outils → InfraS → InfraSStudio → Éditeur) ouvre le site dans une interface trois colonnes : arborescence des pages à gauche, aperçu live au centre, inspector de slot à droite. Le rédacteur clique sur n'importe quel élément du site dans l'aperçu pour ouvrir l'éditeur du slot correspondant — titre, paragraphe, image, icône, couleur. Aucun HTML à toucher, aucune connaissance technique requise. Supprimer les produits de démonstration Les six produits démo créés par le seed sont utiles pour visualiser le catalogue tout de suite, mais ils n'ont pas vocation à rester en production. L'éditeur Produits du Studio affiche un bandeau qui propose deux actions en un clic : Dépublier les produits de démo : les produits restent dans Dolibarr mais sortent du catalogue public ( infrasstudio_published=0). Réversible. Supprimer les produits de démo : efface complètement les six produits, leurs traductions, leurs extrafields et leur liaison à la catégorie. Irréversible. Le bandeau disparaît automatiquement dès qu'aucun produit démo n'est détecté dans l'entité. Aucun risque d'effacer des produits réels — le filtre se base sur les références demo-* posées par le seed. Re-patch automatique des gabarits Dolibarr régénère les fichiers pageN.tpl.php à chaque enregistrement dans son éditeur de pages — ce qui écrase notre invocation du moteur de slots. Le hook InfraSStudio intercepte ces sauvegardes ( action=updatesource ou overwritesite) et re-patche le fichier immédiatement après. Plus aucune manipulation manuelle n'est nécessaire : vous pouvez éditer librement vos pages dans Dolibarr, les slots InfraSStudio continueront de fonctionner. Récapitulatif Vous savez désormais : Choisir entre les deux templates Vibrant et Editorial selon le positionnement souhaité. Importer un template depuis la galerie native du module Site Internet de Dolibarr. Comprendre la pipeline d'auto-configuration en sept étapes qui se déclenche au prochain chargement d'une page admin. Identifier les filets de sécurité (hook doActions, cron horaire, déclenchement à la connexion admin). Personnaliser le site importé via l'éditeur Studio. Nettoyer le site des produits de démonstration en un clic.