Guide de gestion des contenus — PHI Conseil
Tous les textes, services, avantages, témoignages, coordonnées et paramètres SEO se trouvent dans trois fichiers du dossier content/. Ils se modifient avec n'importe quel éditeur de texte (ou l'interface web du dépôt Git) ; aucune modification du code n'est nécessaire. À chaque mise à jour, le site est reconstruit et vérifié : une faute de structure (guillemet manquant, champ oublié) bloque la publication avec un message précis au lieu de casser le site.
Règle d'or : conservez les guillemets
"…"et les virgules ; modifiez uniquement ce qui se trouve entre les guillemets, ou ajoutez/retirez des éléments complets dans les listes.
content/site.json — identité et coordonnées
| Champ | Usage |
|---|---|
brand.name, brand.tagline, brand.footerSignature, brand.legalName |
nom, signature de l'en-tête, phrase du pied de page, raison sociale du copyright |
navigation[] |
liens du menu (ordre = ordre affiché) |
headerCta |
bouton « Contactez-nous → » |
contact.email, contact.phone, contact.address, contact.region |
coordonnées ; laissez "" pour masquer l'icône courriel / la ligne correspondante |
social.linkedin |
URL complète du profil LinkedIn ; "" = icône masquée |
legalLinks[] |
liens juridiques du pied de page |
cookies.* |
textes de la bannière de témoins (titre, description, boutons, libellé « Gérer les témoins », catégories). Les identifiants necessary / analytics / marketing ne doivent pas changer |
seo.siteUrl, seo.defaultTitle, seo.titleTemplate, seo.defaultDescription |
métadonnées par défaut |
content/home.json — page d'accueil
hero.titleLines: les lignes du grand titre (1 à 4).hero.subtitle,hero.cta.hero.image.src: chemin d'une photo placée danspublic/images/(ex."/images/hero.jpg"). Vide = illustration vectorielle de remplacement. Toujours renseigneralt(description pour les lecteurs d'écran).services.items[]:slug(identifiant URL, lettres minuscules et tirets),icon(search,document-edit,chart,check-circle),title,summary(accueil),description(page Services, facultatif). L'ordre du tableau = ordre d'affichage.about:overtitle,title,paragraph,cta,benefits[](coches dorées),image.testimonials.visible:truepour afficher la section. Un témoignage n'apparaît que siapproved: true(autorisation écrite de la personne citée).previewOnlypermet d'afficher les exemples non approuvés uniquement sur un site de démonstration.callToAction: bandeau bleu final.- Chaque section possède
visiblepour la masquer sans la supprimer.
content/pages.json — pages internes
Titres, introductions, descriptions SEO des pages Services, À propos, Témoignages, Nous joindre (liste subjects du menu déroulant, texte de consentement, message de confirmation) et Confidentialité (lastUpdated au format AAAA-MM-JJ ; passez reviewed à true une fois le texte validé juridiquement pour retirer l'avertissement).
Images
- Préparer un JPEG/WebP de bonne qualité (hero : ≥ 1600 px de large ; À propos : format vertical ≥ 1000 × 1250 px).
- Le déposer dans
public/images/. - Renseigner
image.srcetimage.altdanshome.json. - Noter la provenance et la licence dans
docs/ASSET_REGISTER.md. Le site convertit et redimensionne automatiquement (AVIF/WebP, tailles adaptées).
Logo et favicon
Le logo actuel est une recréation SVG de la spirale dorée. Pour utiliser le logo officiel : remplacer le composant src/components/graphics/Logo.tsx par le SVG fourni, puis pnpm icons pour régénérer favicon et icônes (ou fournir directement src/app/icon.svg, src/app/apple-icon.png).
Publier une modification
Sur le serveur d'hébergement : pnpm build && pm2 restart phi-conseil (voir docs/DEPLOYMENT.md), puis git commit pour conserver l'historique. Une erreur de contenu s'affiche au build sous la forme Contenu invalide dans content/home.json : hero.subtitle : ….