CHAPITRE 4 — InfraSStudio dans l'écosystème Dolibarr

Pour utiliser le module efficacement, il est utile de comprendre son positionnement par rapport à Dolibarr et au module Website natif. Ce chapitre présente la répartition des rôles, les dépendances et les limites de la responsabilité du module.

Une analogie pour introduire

L'écosystème Dolibarr et ses extensions peuvent être comparés à un musée et sa galerie d'exposition.

Composant

Rôle

Dolibarr ERP

Le musée. Il abrite les collections (produits, tiers, médias), les notices (libellés multilingues) et les registres (ventes, factures).

Module Website

La galerie d'exposition. Elle définit l'espace et l'éclairage où les œuvres choisies sont présentées au public.

InfraSStudio

Le commissaire d'exposition. Il choisit la mise en valeur des œuvres existantes, sans intervenir sur les œuvres elles-mêmes. Il rédige les notices et organise les parcours.

Lorsqu'une nouvelle œuvre rejoint les collections du musée, elle est automatiquement présentée dans la galerie selon la mise en page prévue. C'est le rôle du catalogue produit dynamique, présenté en détail au Chapitre 15.

Une architecture en trois couches

Le module fonctionne dans un système composé de trois couches superposées, chacune avec un rôle précis.

Couche

Rôle

InfraSStudio

Édition des slots et des médias, gestion des traductions, catalogue produit dynamique, fonctionnalités de blog, outils de référencement.

Module Website (natif Dolibarr)

Stockage des pages, génération des fichiers Apache, gestion des virtualhosts, support multicompany.

Dolibarr ERP

Tiers, produits, factures, utilisateurs, permissions, traductions, base de données, médias.

Chaque couche s'appuie sur celle qui se trouve en dessous, sans la remplacer ni la dupliquer.

Dolibarr ERP, la couche fondamentale

Dolibarr ERP constitue le socle. Il fournit l'ensemble des services dont les couches supérieures ont besoin :

Recommandé — Le module s'appuie systématiquement sur les classes natives de Dolibarr lorsque c'est possible. Cette approche garantit la cohérence avec le reste de l'instance et limite les divergences en cas de mise à jour de Dolibarr.

Le module Website, la couche d'hébergement

Le module Website est livré nativement avec Dolibarr. Pour chaque site qu'il prend en charge, il assure les fonctions suivantes :

Important — Le module Website est l'hôte d'InfraSStudio. Sans lui, le module n'a rien à éditer. La dépendance est inscrite dans le descripteur : InfraSStudio refuse de s'activer si le module Website ne l'est pas.

Le module InfraSStudio, la couche d'édition

InfraSStudio ajoute par-dessus le module Website l'ensemble des fonctionnalités nécessaires à un usage par des utilisateurs non techniques :

Note — Ce qu'InfraSStudio ne fait pas

Le déroulement d'une requête publique

Pour clarifier le rôle de chaque couche, suivons le parcours d'une requête HTTP de bout en bout :

  1. Le visiteur demande une URL, par exemple https://exemple.com/page1.php.
  2. Apache reçoit la requête. Le virtualhost pointe vers le docroot du site.
  3. Le wrapper page1.php, généré par le module Website, inclut le fichier master.inc.php local et amorce Dolibarr.
  4. Le wrapper inclut ensuite le fichier page<N>.tpl.php correspondant.
  5. Le template produit le HTML, contenant encore les tokens {{slot:...}} et {{shortcode:...}}.
  6. InfraSStudio intercepte le HTML via le hook completeHtmlOutput et résout chaque token : valeurs courantes des slots filtrées par la locale du visiteur, données Dolibarr lues en direct.
  7. Apache transmet au navigateur le HTML final, dépourvu de tout token.

Résultat — Du point de vue du navigateur, la page est un document HTML standard. Aucun token n'est visible et aucun traitement JavaScript spécifique n'est nécessaire.

L'emplacement des données

Pour comprendre le module en profondeur, le tableau ci-dessous récapitule où chaque type de donnée est stocké.

Donnée

Emplacement

HTML d'une page (avec tokens)

Disque (

page<N>.tpl.php

) et base (

llx_website_page.content

)

Métadonnées de page (titre SEO, description)

llx_website_page.title

,

description

,

keywords

,

image

Valeurs des slots

llx_infrasstudio_slot

Brouillons en attente de publication

llx_infrasstudio_slot.value_draft

Médias téléversés

DOL_DATA_ROOT/<entity>/medias/<type>/<site>/

Métadonnées des médias

llx_infrasstudio_media

Texte alternatif par locale

llx_infrasstudio_media_alt

Traductions natives produit

llx_product

(FR) et

llx_product_lang

(autres locales)

Traductions des extrafields produit

llx_product_extrafields

et

llx_infrasstudio_product_translation

Historique des modifications

llx_infrasstudio_revision

Configuration du module

llx_const

(constantes préfixées

INFRASSTUDIO_

)

Ce qui reste géré dans Dolibarr lui-même

Le module ne remplace aucun module Dolibarr existant. Les opérations suivantes continuent à se faire dans Dolibarr :

Recommandé — Le module ne crée aucun outil parallèle pour ces fonctions. Il s'appuie sur l'existant, ce qui simplifie la formation et limite la duplication d'information.


Revision #10
Created 2026-05-07 10:01:54 UTC by Lucky Ranasolonirina
Updated 2026-05-07 15:28:22 UTC by Lucky Ranasolonirina