Aller au contenu principal

Pied de page (Footer)

Utilisez le pied de page pour les informations institutionnelles, liens obligatoires et ressources transverses.

attention

Ce composant nécessite une licence Pro valide en production.

InformationValeur
NiveauPro
Composants Twigdsfr:footer, dsfr:footer:top, dsfr:footer:brand, dsfr:footer:content, dsfr:footer:partners, dsfr:footer:bottom

Usage

  • Utilisez brandLabel pour le texte institutionnel du bloc marque.
  • Composez le pied de page avec ses sous-composants.
  • Les liens externes doivent conserver rel="noopener noreferrer".

Modes d'utilisation

Pied de page · exemple principal
<twig:dsfr:footer>
<twig:dsfr:footer:top :links="[
{label: 'Plan du site', href: '/plan-du-site'}
]" />
<twig:dsfr:footer:brand siteName="info.gouv.fr" brandLabel="Gouvernement" />
<twig:dsfr:footer:content description="Service public numérique." :links="[
{label: 'service-public.fr', href: 'https://www.service-public.fr'}
]" />
<twig:dsfr:footer:partners title="Nos partenaires" :links="[
{label: 'Service Public', href: 'https://www.service-public.fr'}
]" />
<twig:dsfr:footer:bottom :links="[
{label: 'Accessibilité', href: '/accessibilite'},
{label: 'Données personnelles', href: '/donnees-personnelles'}
]" />
</twig:dsfr:footer>

API publique

ComposantRôle
dsfr:footerComposant principal de cette page.
dsfr:footer:topSous-composant public utilisable en composition Twig.
dsfr:footer:brandSous-composant public utilisable en composition Twig.
dsfr:footer:contentSous-composant public utilisable en composition Twig.
dsfr:footer:partnersSous-composant public utilisable en composition Twig.
dsfr:footer:bottomSous-composant public utilisable en composition Twig.

Configuration

OptionTypeDéfaut / requisValeurs et usage
siteNamestring""Nom du site. Vide = mode composition avec sous-composants.
brandLabel / siteDescriptionstring|nullnullIdentité et description du site.
homepageHref / homepageTitlestring/ / ""Lien d’accueil.
contentLinks / bottomLinksarray|string[]Liens du contenu et bas de page.
licensebooltrueAffiche la mention de licence.
operatorLogoboolfalseActive la zone logo opérateur.
operatorLogoSrc / operatorLogoAltstring""Source et alternative du logo opérateur.
sous-composantsslottop, brand, content, partners, bottomComposition complète avec les sous-composants du pied de page.

Guide d'intégration

QuestionRéponse
Famille DSFRMise en page
Quand l'utiliserQuand vous composez une page, une zone transverse ou un bloc structurel réutilisable.
Quand éviterPour corriger un espacement local : utilisez d’abord les props et classes utilitaires DSFR prévues.
API publiqueUtilisez uniquement les composants Twig listés sur cette page : dsfr:footer, dsfr:footer:top, dsfr:footer:brand, dsfr:footer:content, dsfr:footer:partners, dsfr:footer:bottom.
Documentation DSFRConsultez aussi la bibliothèque officielle : Système de Design de l'État.
Pied de page : composition Twig et données contentLinks

Variantes de pied de page

  • composition avancée avec les sous-composants publics listés dans cette page.

Points de contrôle propres à ce composant

  • Utilisez brandLabel pour le texte institutionnel du bloc marque.
  • Composez le pied de page avec ses sous-composants.
  • Les liens externes doivent conserver rel="noopener noreferrer".
  • Vérifiez un cas vide, un cas avec plusieurs entrées et un cas avec données dynamiques pour contentLinks.
  • Testez la composition avec dsfr:footer:top, dsfr:footer:brand, dsfr:footer:content, dsfr:footer:partners, dsfr:footer:bottom sans copier les templates internes.
  • Renseignez une alternative textuelle utile pour les images informatives et vide pour les images décoratives.

Accessibilité mise en page

  • Le composant ne remplace pas les landmarks de votre page : gardez main, nav, aside, section côté application.
  • Les zones transverses doivent rester identifiables et cohérentes entre les pages.
  • Vérifiez les ruptures responsive sur mobile, tablette et desktop.

Intégration Symfony/Twig pour dsfr:footer

  • Passez contentLinks avec la syntaxe : pour conserver le type tableau : :contentLinks="contentLinks".
  • Composez avec les sous-composants publics dsfr:footer:top, dsfr:footer:brand, dsfr:footer:content, dsfr:footer:partners, dsfr:footer:bottom quand le rendu doit être plus précis que les props.
  • Ajoutez vos attributs applicatifs (data-controller, data-action, aria-*, class) sur dsfr:footer quand ils concernent son nœud racine.

Checklist de recette

  • rendu mobile sans débordement
  • landmarks présents dans la page
  • comportement thème clair/sombre si concerné
  • rendu vérifié en thème clair et sombre ;
  • rendu vérifié sur mobile, tablette et desktop ;
  • aucune erreur dans le profiler DSFR ni dans l'inspecteur d'accessibilité du navigateur.

Erreurs fréquentes

SymptômeCorrection
Les données contentLinks ne sont pas prises en compteAjoutez : devant la prop Twig : :contentLinks.
Les classes DSFR semblent incomplètesUtilisez les props du composant plutôt que des classes ajoutées à la main.
Le composant rend en local mais pas en productionVérifiez la licence avec php bin/console dsfr:license:validate.