• Go to main content
Top of the page

Thème Paris.fr
    • Connect
Thème Paris.fr
Logo de Ville de Paris – Aller vers l’accueil

Thème Paris.fr

    • Quick start
    • Configurer
    • Versions
    • Mettre à jour le thème
    • Plugins
    • Support
    • Grille
    • Ombres
    • Navigation
    • Couleurs
    • Typographie
    • Iconographie
  • Composants
    • Pages
    • Code
    • Mail

Thème Paris.fr

  1. Home
  2. Styles
  3. Navigation
Chargement...

@cMainNav

Menu principal: Horizontal (par défaut ) ou vertical

Par défaut le menu principal est horizontal. Vous pouvez la basculer en "vertical" en cochant "Menu vertical" dans les propriétés du "Thème Paris.fr" en Back Office.

Menu principal

Menu Principal

Menu principal vertical

Menu Principal Vertical

<@cMainNav  />

<p>
Par défaut le menu principal est horizontal. Vous pouvez la basculer en "vertical" en cochant "Menu vertical" dans les propriétés du "Thème Paris.fr" en Back Office.</p>
<div class="row ">
<div class="col ">
<h4>
Menu principal</h4>
<img src="images/menu_parisfr.png" alt="Menu Principal" class="img-fluid" id="menu_principal">
</div>
<div class="col ">
<h4>
Menu principal vertical</h4>
<img src="images/menu_vertical_parisfr.png" alt="Menu Principal Vertical" class="img-fluid" id="menu_principal_vertical">
</div>
</div>

La macro @cMainNav permet de générer la barre de navigation principale du site. Elle est utilisée par défaut dans le thème Paris.fr.

Elle permet de générer un menu horizontal ou vertical, avec des sous-menus, un champ de recherche et un menu utilisateur.

Paramètres

Voici la liste des différents paramètres de la macro :

  • id (string) optionnal - identifiant unique de la barre de navigation
  • class (string) optionnal - classe(s) css de la barre de navigation
  • title (string) required - Titre du site. Par défaut récupère le nom de la variable "favorite".
  • logoImg (string) required - url de l'image utilisée comme logo pour le titre du site
  • href (string) required - url de redirection sur le logo du titre du site
  • hasMenu (boolean) required - si true, le site affiche le menu par défaut, généré par la XSL par défaut. XSL modifiable en BO
  • hasNestedMenu (boolean) optionnal - si true, affiche les items de menu ajouté dans le template "themeparisfr_frameset_main_nav.html"
  • isOnlyHome (boolean) required - si true, le menu ne sera affiché que sur la page d'accueilConfigurable en BO
  • isSidebar (boolean) required - si true, le menu sera vertical calé à gaucheConfigurable en BO
  • isSibebarCollapsible (boolean) required - si true, le menu pourra être masquéConfigurable en BO
  • sidebarMenuClass (boolean) optionnal - ajoute une classe au menu vertical. Par défaut vide.
  • showDefaultMenu (boolean) required - si true, affiche le menu
  • hasSearchMenu (boolean) required - si true, ajoute la rercherche au menu
  • typeSearch (string) required - Si Field, ajoute le champs de rercherche sinon un lien paramètre sur l'url de recherche précisée dans les paramètres les propriétés du site. Si la valeur est button une icone de recherche sera positionnée après le menu.
  • searchUrl (string) required - Url pour l'icone de recherche. Par défaut récupère la valeur de l'url de recherche précisée dans les paramètres les propriétés du site.
  • searchAction (string) required - Url d'action pour le formulaire nécessite typeSearch='field'
  • searchSolr (boolean) required - si "true" fait la recherche sur Solr et non sur le moteur de recherche par défaut.
  • searchParams (string) optionnal - tous champs à ajouter au formulaire nécessitent typeSearch='field'
  • isFixed (boolean) optionnal - si true, le menu est "fixe" en haut de page. Valeur par défaut "isFixedMenu?boolean" en base (clé dans la table core_datastore nommée "themeparisfr.site_property.menu.fixedMenu.checkbox" )
  • hasLogin (boolean) required - si true, le site est authentifié et propose un bouton de login (connexion Mon Paris)
  • loginClass (string) optionnal - classe CSS pour le bouton de login
  • mainClass (string) optionnal - classe CSS pour la balise main
  • role (string) required - role aria par défaut
  • params (string) optionnal - permet d'ajouter des paramètres HTML à la barre de navigation

Aide

La n avigation principale configurée par défaut dans le template "WEB-INF\templates\skin\site\themeparisfr_frameset_main_nav.html"

Configurable en BO En BO vous pouvez modifier plusieurs paramètres de la navigation principale.

Pour modifier le menu principal, il faut aller dans le BO dans le menu "Administration du site / Propriétés du site" ou le bouton

Gestion des menus

  • Afficher le menu principal : Affiche le menu principal -barre de menu-. A décocher par exemple si l'on ne veut que le menu "sidebar".
  • Le menu principal est fixe : Si cette case est cochée, le menu principal est fixe.
  • Activer le menu principal vertical : Affiche le menu principal dans une zone latérale à gauche.
    Attention Il est possible qu'il faille modifier la feuille de style XSL par défaut du menu nommée "menu_main_themeparisfr.xsl" disponible dans la webapp "\WEB-INF\xsl\normal\".
  • Rendre le menu principal vertical retractable : Ajoute la possibilité d'afficher un bouton permettant de masquer / Afficher le menu vertical.
  • Accès rapide : Identifiant du contenu principal : Identifiant pour accéder au contenu principal -par défaut "main"- lorsque l'utilisateur utilise les tabulations et fait apparaitre le menu d'acceès rapide -lien d'évitement-. Attention ! Necessite de mettre cet id dans toutes les templates "principaux" .
  • Accès rapide : Afficher / masquer le lien d'accès rapide au menu principal : Si cochée, le lien d'accès rapide au menu principal sera affiché, par défaut il ne l'est pas.
  • Ajouter le bouton "Retour en haut" : Affiche en bas à droite un bouton pour remonter en haut de page.
  • Afficher / masquer le menu du plan du site : Si coché, le menu "Plan du site" sera affiché dans le pied de page.
  • Activer la gestion des menus long : Si cette case est décochée, si les menus dépassent la taille maximale du menu, un sous menu se créé automatiquement pour afficher les menus qui dépassent la largeur maximum.

Consulter aussi...

Authentification Mon Paris [New window]

@cMainNavItem

Doc Bootstrap @cMainNavItem [New window]

Exemple


Paris
Logo de Ville de Paris – Aller vers l’accueil

Paris

Paris

Thème Paris.fr

<@cMainNav hasMenu=false isSidebar=false title='Paris' hasLogin=false >
<@cMainNavItem title='Home' url='.' />
<@cMainNavItem title='Paris.fr' url='https://paris.fr' target='_blank' />
</@cMainNav>

<header class="main-header is-fixed has-banner" id="main-banner-themeparisfr" role="banner">
<nav class="navbar navbar-expand-md navbar-paris navbar-light" aria-labelledby="main-nav-title">
<a class="navbar-brand" href=".">
<img src="themes/skin/parisfr/images/header-logo-paris.svg" class="logo" alt="">
<hr aria-hidden="true">
<span class="main-service-title">Paris </span>
</a>
<ul class="navbar-nav navbar-main ms-auto order-md-last">
</ul>
<button class="navbar-toggler" data-bs-toggle="offcanvas" data-bs-target="#navbarMainMenu" aria-label="Show menu" aria-controls="navbarMainMenu">
<span id="navbar-icon">
<span><span class="visually-hidden-focusable">Show menu</span></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
</button>
<div class="offcanvas-md offcanvas-end flex-grow-1" tabindex="-1" id="navbarMainMenu" aria-labelledby="navbarMainMenuOffcanvasLabel" role="dialog" data-bs-scroll="true">
<div class="offcanvas-header justify-content-center">
<div class="d-flex flex-1 flex-column bg-white-color ">
<div class="d-flex w-100 justify-content-between align-items-center px-m">
<img src="themes/skin/parisfr/images/header-logo-paris.svg" class="logo" alt="Logo de Ville de Paris – Aller vers l’accueil">
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close" data-bs-target="#navbarMainMenu"></button>
</div>
<h2 class="h6 offcanvas-title flex-1 main-bg-color text-center px-auto text-white" id="navbarMainMenuOffcanvasLabel">Paris</h2>
</div>
</div>
<div class="offcanvas-body py-0 p-lg-0">
<div class="navbar-main" aria-label="Main menu Show menu" role="navigation">
<ul id="main-site-menu" class="navbar-nav navbar-main mx-auto" aria-label="Main menu">
</ul>
</div>
</div>
</div>
</nav>
<div class="main-service-title" id="main-nav-title" aria-hidden="true"><span>Paris</span></div>
<div class="banner bg-banner credits page-" id="main-banner" data-credits="Crédit photo : Sophie Robichon / Ville de Paris" style="background-image:url(images/banner_v.jpg);" >
<h1 id="main-banner-title">Thème Paris.fr</h1>
</div>
</header>
<main id="main" class="h-50" role="main">

Paramètres

Voici la liste des différents paramètres de la macro :

  • id (string) optionnal - identifiant unique de l'élément de navigation
  • class (string) optionnal - classe(s) css de l'élément de navigation
  • title (string) required - titre de l'élément de navigation
  • url (string) required - url de redirection de l'élément de navigation
  • urlClass (string) optionnal - classe(s) css de l'élément lien de navigation
  • icon (string) optionnal - nom de l'icône à afficher, si vide n'affiche pas d'icône
  • target (string) optionnal - les valeurs possibles sont '', _top, _blank, _parent
  • showTitle (boolean) required - ajoute l'attribute title avec le libellé du paramètre "title"
  • params (string) optionnal - permet d'ajouter des paramètres HTML à l'élément de navigation

Aide

Entrée de menu pour le menu de navigation

@cMainNavUser

Doc Bootstrap @cMainNavUser [New window]

Exemple

Menu non connecté


Paris
    • Connect
Logo de Ville de Paris – Aller vers l’accueil

Paris

Paris

Thème Paris.fr

Menu connecté "John Doe"


Paris
Logo de Ville de Paris – Aller vers l’accueil

Paris

Paris

Thème Paris.fr

<@cMainNavUser connected=true username='User Name' logout='AgLogout' />

<p class="divider">Menu non connecté</p>
<header class="main-header is-fixed has-banner" id="main-banner-themeparisfr" role="banner">
<nav class="navbar navbar-expand-md navbar-paris navbar-light" aria-labelledby="main-nav-title">
<a class="navbar-brand" href=".">
<img src="themes/skin/parisfr/images/header-logo-paris.svg" class="logo" alt="">
<hr aria-hidden="true">
<span class="main-service-title">Paris </span>
</a>
<ul class="navbar-nav navbar-main ms-auto order-md-last">
<li class="nav-item navbar-mon-paris">
<ul id="monparis-wrapper" class="navbar-nav mylutece db multi">
<li class="nav-item">
<a class="nav-link" href="jsp/site/Portal.jsp?page=mylutece&action=login&auth_provider=mylutece-database" aria-label="Link to connect to Mon Paris Account">
<svg class="paris-icon paris-icon-user user-logo"data-mce-svg="paris-icon paris-icon-user" aria-hidden="true" focusable="false" role="img">
<use href="#paris-icon-user"></use>
</svg> <span class="ms-xs fw-bold d-none d-md-block"> Connect</span>
</a>
</li>
</ul>
</li>
</ul>
<button class="navbar-toggler" data-bs-toggle="offcanvas" data-bs-target="#navbarMainMenu" aria-label="Show menu" aria-controls="navbarMainMenu">
<span id="navbar-icon">
<span><span class="visually-hidden-focusable">Show menu</span></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
</button>
<div class="offcanvas-md offcanvas-end flex-grow-1" tabindex="-1" id="navbarMainMenu" aria-labelledby="navbarMainMenuOffcanvasLabel" role="dialog" data-bs-scroll="true">
<div class="offcanvas-header justify-content-center">
<div class="d-flex flex-1 flex-column bg-white-color ">
<div class="d-flex w-100 justify-content-between align-items-center px-m">
<img src="themes/skin/parisfr/images/header-logo-paris.svg" class="logo" alt="Logo de Ville de Paris – Aller vers l’accueil">
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close" data-bs-target="#navbarMainMenu"></button>
</div>
<h2 class="h6 offcanvas-title flex-1 main-bg-color text-center px-auto text-white" id="navbarMainMenuOffcanvasLabel">Paris</h2>
</div>
</div>
<div class="offcanvas-body py-0 p-lg-0">
<div class="navbar-main" aria-label="Main menu Show menu" role="navigation">
<ul id="main-site-menu" class="navbar-nav navbar-main mx-auto" aria-label="Main menu">
</ul>
</div>
</div>
</div>
</nav>
<div class="main-service-title" id="main-nav-title" aria-hidden="true"><span>Paris</span></div>
<div class="banner bg-banner credits page-" id="main-banner" data-credits="Crédit photo : Sophie Robichon / Ville de Paris" style="background-image:url(images/banner_v.jpg);" >
<h1 id="main-banner-title">Thème Paris.fr</h1>
</div>
</header>
<main id="main" class="h-50" role="main">
<p class="divider">Menu connecté "John Doe"</p>
<header class="main-header is-fixed has-banner" id="main-banner-themeparisfr" role="banner">
<nav class="navbar navbar-expand-md navbar-paris navbar-light" aria-labelledby="main-nav-title">
<a class="navbar-brand" href=".">
<img src="themes/skin/parisfr/images/header-logo-paris.svg" class="logo" alt="">
<hr aria-hidden="true">
<span class="main-service-title">Paris </span>
</a>
<ul class="navbar-nav navbar-main ms-auto order-md-last">
</ul>
<button class="navbar-toggler" data-bs-toggle="offcanvas" data-bs-target="#navbarMainMenu" aria-label="Show menu" aria-controls="navbarMainMenu">
<span id="navbar-icon">
<span><span class="visually-hidden-focusable">Show menu</span></span>
<span aria-hidden="true"></span>
<span aria-hidden="true"></span>
</span>
</button>
<div class="offcanvas-md offcanvas-end flex-grow-1" tabindex="-1" id="navbarMainMenu" aria-labelledby="navbarMainMenuOffcanvasLabel" role="dialog" data-bs-scroll="true">
<div class="offcanvas-header justify-content-center">
<div class="d-flex flex-1 flex-column bg-white-color ">
<div class="d-flex w-100 justify-content-between align-items-center px-m">
<img src="themes/skin/parisfr/images/header-logo-paris.svg" class="logo" alt="Logo de Ville de Paris – Aller vers l’accueil">
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close" data-bs-target="#navbarMainMenu"></button>
</div>
<h2 class="h6 offcanvas-title flex-1 main-bg-color text-center px-auto text-white" id="navbarMainMenuOffcanvasLabel">Paris</h2>
</div>
</div>
<div class="offcanvas-body py-0 p-lg-0">
<div class="navbar-main" aria-label="Main menu Show menu" role="navigation">
<ul id="main-site-menu" class="navbar-nav navbar-main mx-auto" aria-label="Main menu">
</ul>
</div>
</div>
</div>
</nav>
<div class="main-service-title" id="main-nav-title" aria-hidden="true"><span>Paris</span></div>
<div class="banner bg-banner credits page-" id="main-banner" data-credits="Crédit photo : Sophie Robichon / Ville de Paris" style="background-image:url(images/banner_v.jpg);" >
<h1 id="main-banner-title">Thème Paris.fr</h1>
</div>
</header>
<main id="main" class="h-50" role="main">

Paramètres

Voici la liste des différents paramètres de la macro :

  • id (string) optionnal - identifiant unique du menu
  • class (string) optionnal - classe(s) css du menu
  • connected (boolean) required - indique si une connexion utilisateur existe
  • userName (boolean) required - nom de l'utilisateur si connecté
  • urlConnect (string) required - url de connexion ou de déconnexion
  • btnToggle (boolean) required - ouvre le menu dans un dropdown
  • userFullName (string) optionnal - nom de l'utilisateur à afficher
  • userEmail (string) optionnal - email de l'utilisateur à afficher
  • userInitials (string) optionnal - initiales de l'utilisateur à afficher
  • hasIcon (boolean) required - permet d'afficher ou non l'icone utilisateur
  • title (string) required - libellé pour les icônes
  • params (string) optionnal - permet d'ajouter des paramètres HTML au menu

Aide

Menu Mon Paris

Il n'est pas nécessaire de mettre cette macro en surcharge dans la macro @cMainNav. Elle est chargée par défaut si la config est en place

PRE-REQUIS: activer dans le BO les plugins suivants : plugin-mylutece, module-mylutece-oauth2, plugin-oauth2 ou module-mylutece-database

Il est possible de modifier l'environnement de connexion MonParis via le BO en allant dans : Site/Gestion des propriétés du Site/Configuration du Thème Paris/Mon Paris

@skipNav

Exemple

  • Go to main content
  • Go to main menu
Top of the page

<@skipNav />

<nav aria-label="Quick access" role="navigation">
<ul class="skip-links">
<li><a href="#main">Go to main content</a></li>
<li><a id="skip-nav" href="#main-site-menu">Go to main menu</a></li>
</ul>
<div id="top" class="visually-hidden visually-hidden-focusable">Top of the page</div>
</nav>

Paramètres

Voici la liste des différents paramètres de la macro :

  • target (string) optionnal - Default: main, id du contenu principal.Configurable en BO
  • skipMenu (booelan) optionnal - Default: true, si true affiche le lien vers le menu.Configurable en BO

Aide

Accesibilité: Menu d'accès rapide pour permettre d'accéder rapidement au menu principal ou au contenu principal

Information

Effectuer quelques tabulations pour faire apparaître le menu d'accès rapide.

Warning

Cette macro n'est pas immédiatement visible sur la page.

@cMainBanner

Exemple

Avec image

Banner_01

Sans image

Banner_02

<@cMainBanner title='Banner_01' imageSrc='images/local/skin/banner.jpg' id='banner_01'/>
<@cMainBanner title='Banner_02' id='banner_02' imageSrc='' />

<p class="divider">Avec image</p>
<div class="banner bg-banner credits page-" id="banner_01" data-credits="Crédit photo : Sophie Robichon / Ville de Paris" style="background-image:url(images/local/skin/banner.jpg);" >
<h1 id="main-banner-title">Banner_01</h1>
</div>
<p class="divider">Sans image</p>
<div class="banner credits page-" id="banner_02" data-credits="Crédit photo : Sophie Robichon / Ville de Paris" >
<h1 id="main-banner-title">Banner_02</h1>
</div>

Paramètres

Voici la liste des différents paramètres de la macro :

  • id (string) optionnal - identifiant unique de la bannière
  • title (string) optionnal- titre de la bannière
  • class (string) optionnal - classe(s) css de la bannière
  • titleClass (string) optionnal Classe CSS à ajouter au titre de la bannière - par défaut vide
  • onlyHome (boolean)optionnal - si true, le site affiche la bannière que sur la première page Configurable en BO
  • imageSrc (string) optionnal - Chemin vers une image. Attention cette image sera placée en fond et couvrira la totalité de taille de la bannière. Configurable en BO
  • params (string) optionnal - permet d'ajouter des paramètres HTML à la bannière

Aide

Image bannière sur page principale. Par défaut l'image affichée est définie dans le BO. Accéder aux propriétés du site ( menu "Administration du site / Propriétés du site" ou bouton ), onglet "Configuration du Thème Parisfr ". Dans l'onglet le champs "Image du bandeau" contient le chemin de l'image affichée.

Plusieurs options permettent de gérer l'affichage de ce bandeau Configurable en BO:

  • Afficher l'image sur le bandeau sur la page d'accueil du site : Afficher l'image définie dans le champs "Image du bandeau" bandeau sur la page d'accueil du site
  • Afficher le bandeau sur toutes les pages : Si n'est pas coché affiche seulement le bandeu sur la home page
  • Afficher l'image du site sur le bandeau : Si coché affiche l'image
  • Crédit de l'image du site sur le bandeau : Si rempli affiche le crédit pour l'image du bandeau

@cBreadCrumb

Doc Bootstrap @cBreadCrumb [New window]

Exemple

  1. Home
  2. Page 1
  3. Page 2

<#assign ls = [ {"title":"Page 1", "url":"https://paris.fr"},{"title":"Page 2", "url":"https://www.paris.fr/municipalite"}]>
<@cBreadCrumb 'Home' ls />

<nav aria-label="breadcrumb" class="breadcrumb-nav">
<div class="container">
<ol class="breadcrumb">
<li class="breadcrumb-item">
<a target="_top" href=".">Home</a>
</li>
<li class="breadcrumb-item ">
<a href="https://paris.fr" title="Page 1" target="_top">
<span>Page 1</span>
</a>
</li>
<li class="breadcrumb-item active" aria-current="page">
<span>Page 2</span>
</li>
</ol>
</div>
</nav>

Paramètres

Voici la liste des différents paramètres de la macro :

  • home (string) required - Titre de la page Home. Par défaut clé Fil d'ariane disponible dans le fichier "themeparisfr_messages_fr.properties"
  • items (list) required - Objet JSON list avec liste d'item de page. L'objet contient un attribut 'titre' et un attribut 'url'.
  • class (string) optionnal - classe(s) css de la bannière
  • params (string) optionnal - permet d'ajouter des paramètres HTML au fil d'ariane

Aide

Fil d'ariane

@cMainFooter

Doc Bootstrap @cMainFooter [New window]

Exemple

Paris.fr [Nouvelle Fenêtre]
Thème Paris.fr
  • Paris.fr Paris.fr [Nouvelle Fenêtre]
  • plan du site plan du site [Nouvelle Fenêtre]
  • Contact Contact [Nouvelle Fenêtre]
  • Mentions légales Mentions légales [Nouvelle Fenêtre]
  • Conditions générales d'utilisation Conditions générales d'utilisation [Nouvelle Fenêtre]
  • Protection des données Protection des données [Nouvelle Fenêtre]
  • Accessibilité Accessibilité [Nouvelle Fenêtre]
  • Politique de cookies Politique de cookies [Nouvelle Fenêtre]

<@cMainFooter>
 <#-- Add your own Footer Menu Content here with @mainNavItem macro  -->
 <@cMainNavItem title='Formulaires' url='jsp/site/Portal.jsp?page=forms&view=stepView&id_form=1&init=true' />

<footer>
<div class="container">
<div class="row flex-column m-0 hide-icon-target">
<div class="main-footer col pb-3">
<a class="logo text-right" href="http://www.paris.fr" target="_blank">
<img src="themes/skin/parisfr/images/footer-logo-paris.svg" alt="" class="d-inline-block">
<span class="visually-hidden">Paris.fr [Nouvelle Fenêtre]</span>
</a>
<hr>
<a class="text-left" title="Thème Paris.fr" href=".">Thème Paris.fr</a>
</div>
<div class="col justify-content-center mt-3">
<nav class="navbar" aria-label="Informations Pied de Page">
<ul class="nav justify-content-center">
<li class="nav-item">
<a class="nav-link" href="http://www.paris.fr" target="_blank">
Paris.fr <span class="visually-hidden">Paris.fr [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="jsp/site/Portal.jsp?page=map">
plan du site <span class="visually-hidden">plan du site [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/contact-232" target="_blank">
Contact <span class="visually-hidden">Contact [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/mentions-legales-235" target="_blank">
Mentions légales <span class="visually-hidden">Mentions légales [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/mentions-legales-235" target="_blank">
Conditions générales d'utilisation <span class="visually-hidden">Conditions générales d'utilisation [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/mentions-legales-235" target="_blank">
Protection des données <span class="visually-hidden">Protection des données [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="plugins/nonaccessible" target="_blank">
Accessibilité <span class="visually-hidden">Accessibilité [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/cookies-234" target="_blank">
Politique de cookies <span class="visually-hidden">Politique de cookies [Nouvelle Fenêtre]</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
</footer>

Paramètres

Voici la liste des différents paramètres de la macro :

  • title (string) required - nom du service numérique
  • nested_pos (string) required - Position du contenu 'nested' passé dans la macro. Valeurs possible avant,'before' et aprés,'after'

Aide

Cette macro affiche le pied de page principal par défaut. Configurable en BO

@cMainFooterSocial

Doc Bootstrap @cMainFooterSocial [New window]

Exemple

Paris.fr [Nouvelle Fenêtre]
Thème Paris.fr
  • Paris.fr Paris.fr [Nouvelle Fenêtre]
  • plan du site plan du site [Nouvelle Fenêtre]
  • Contact Contact [Nouvelle Fenêtre]
  • Mentions légales Mentions légales [Nouvelle Fenêtre]
  • Conditions générales d'utilisation Conditions générales d'utilisation [Nouvelle Fenêtre]
  • Protection des données Protection des données [Nouvelle Fenêtre]
  • Accessibilité Accessibilité [Nouvelle Fenêtre]
  • Politique de cookies Politique de cookies [Nouvelle Fenêtre]

Nous suivre

  • Facebook
  • Twitter
  • Instagram
  • LinkedIn

Recevez chaque semaine l'actualité de votre ville sur les réseaux sociaux

<@cMainFooterSocial title='Exemple'>
 <#-- Add your own Footer Menu Content here with @mainNavItem macro  -->
 <@cMainNavItem title='Formulaires' url='jsp/site/Portal.jsp?page=forms&view=stepView&id_form=1&init=true' />

<footer class="social">
<div class="row m-0">
<div class="col-12 col-md-7">
<div class="main-footer justify-content-around py-4">
<div class="d-flex align-items-center justify-content-center justify-content-lg-start w-100">
<a class="logo text-right" href="http://www.paris.fr" target="_blank">
<img src="themes/skin/parisfr/images/footer-logo-paris.svg" alt="" class="d-inline-block">
<span class="visually-hidden">Paris.fr [Nouvelle Fenêtre]</span>
</a>
<hr>
<a class="site" title="Thème Paris.fr" alt="Paris.fr" href=".">Thème Paris.fr</a>
</div>
</div>
<div class="main-footer justify-content-around">
<nav class="navbar d-flex align-items-center" aria-label="Informations Pied de Page">
<ul class="nav d-flex justify-content-center justify-content-md-start">
<li class="nav-item">
<a class="nav-link" href="http://www.paris.fr" target="_blank">
Paris.fr <span class="visually-hidden">Paris.fr [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="jsp/site/Portal.jsp?page=map">
plan du site <span class="visually-hidden">plan du site [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/contact-232" target="_blank">
Contact <span class="visually-hidden">Contact [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/mentions-legales-235" target="_blank">
Mentions légales <span class="visually-hidden">Mentions légales [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/mentions-legales-235" target="_blank">
Conditions générales d'utilisation <span class="visually-hidden">Conditions générales d'utilisation [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/mentions-legales-235" target="_blank">
Protection des données <span class="visually-hidden">Protection des données [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="plugins/nonaccessible" target="_blank">
Accessibilité <span class="visually-hidden">Accessibilité [Nouvelle Fenêtre]</span>
</a>
</li>
<li class="nav-item">
<a class="nav-link" href="https://www.paris.fr/pages/cookies-234" target="_blank">
Politique de cookies <span class="visually-hidden">Politique de cookies [Nouvelle Fenêtre]</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
<div class="col-12 main-bg-color col-md-5 d-flex justify-align-items">
<div class="social-links">
<h2 class="paris-footer-social-title text-center text-gray">Nous suivre</h2>
<ul class="list-inline text-center">
<li class="list-inline-item">
<a class="social-link has-icon hide-icon-target" target="_blank" href="https://www.facebook.com/paris">
<svg class="paris-icon paris-icon-facebook" role="img" aria-labelledby="paris-icon-title-fb" focusable="false">
<title id="paris-icon-title-fb">Facebook </title>
<use xlink:href="#paris-icon-facebook"></use>
</svg>
</a>
</li>
<li class="list-inline-item">
<a class="social-link has-icon hide-icon-target" target="_blank" href="https://twitter.com/paris">
<svg class="paris-icon paris-icon-x" role="img" aria-labelledby="paris-icon-title-tw" focusable="false">
<title id="paris-icon-title-x">Twitter</title>
<use xlink:href="#paris-icon-x"></use>
</svg>
</a>
</li>
<li class="list-inline-item">
<a class="social-link has-icon hide-icon-target" target="_blank" href="https://www.instagram.com/paris_maville/">
<svg class="paris-icon paris-icon-instagram" role="img" aria-labelledby="paris-icon-title-in" focusable="false">
<title id="paris-icon-title-in">Instagram</title>
<use xlink:href="#paris-icon-instagram"></use>
</svg>
</a>
</li>
<li class="list-inline-item">
<a class="social-link has-icon hide-icon-target" target="_blank" href="https://www.linkedin.com/company/villedeparis/">
<svg class="paris-icon paris-icon-linkedin" role="img" aria-labelledby="paris-icon-title-li" focusable="false">
<title id="paris-icon-title-li">LinkedIn</title>
<use xlink:href="#paris-icon-linkedin"></use>
</svg>
</a>
</li>
</ul>
<p class="paris-footer-social-title text-center">Recevez chaque semaine l'actualité de votre ville sur les réseaux sociaux</p>
</div>
</div>
</div>
</footer>

Paramètres

Voici la liste des différents paramètres de la macro :

  • title (string) required - nom du service numérique
  • nested_pos (string) required - position du contenu 'nested' passé dans la macro. Valeurs possible avant,'before' et aprés,'after'
  • socialNested (string) optionnal - position du contenu 'nested' passé dans la macro. Valeurs possible avant,'before' et après,'after'
  • align (string) required - alignement de la partie "menu" dans le pied de page. Valeurs possibles : 'arround' | 'between' | 'start' | 'end' | 'evenly'
  • classColMain (string) required - taille de la zone "menu"
  • classColSocial (string) required - taille de la zone "social"

Aide

Pied de page principal avec les boutons "réseaux sociaux" de Paris.fr Configurable en BO

@cOffcanvas

Doc Bootstrap @cOffcanvas [New window]

Exemple

Afficher le menu gauche Afficher le menu gauche

Menu Offcanvas

  • Menu 1
  • Menu 2
Afficher le menu haut Afficher le menu haut

Menu Offcanvas - Top

  • Menu 1
  • Menu 2
Afficher le menu de droite Afficher le menu de droite

Menu Offcanvas - Right

  • Menu 1
  • Menu 2

<@cOffcanvas id='off1'>
<@chList>
    <@chItem>Menu 1</@chItem>
    <@chItem>Menu 2</@chItem>
</@chList>
</@cOffcanvas>

<a id="btn-off-end" class="btn btn-primary " onclick="event.preventDefault();" data-bs-toggle="offcanvas" data-bs-scroll=false data-bs-backdrop="true" href="#off-end" role="button" aria-controls="off-end" title="Afficher le menu gauche">
Afficher le menu gauche
<span class="visually-hidden">Afficher le menu gauche</span>
</a>
<div class="offcanvas offcanvas-end w-auto" data-lutece-load-content-url="" data-lutece-load-content-target="" data-lutece-redirectForm=true tabindex="-1" id="off-end" aria-labelledby="off-endLabel">
<div class="offcanvas-header border-bottom d-flex justify-content-between align-items-center">
<h2 class="h4 offcanvas-title p-0 pe-xl m-0 me-xl" id="off-endLabel">Menu Offcanvas</h2>
<button type="button" class="border btn btn-light btn-rounded btn-icon end-0 mx-sm p-0" data-bs-dismiss="offcanvas" aria-label="Fermer">
<svg class="paris-icon paris-icon-close mt-xs"data-mce-svg="paris-icon paris-icon-close" aria-hidden="true" focusable="false" role="img">
<use href="#paris-icon-close"></use>
</svg> </button>
</div>
<div id="offcanvas-body-off-end" class="offcanvas-body text-break ps-xl">
<ul >
<li>
Menu 1</li>
<li>
Menu 2</li>
</ul>
</div>
</div>
<a id="btn-off-top" class="btn btn-secondary " onclick="event.preventDefault();" data-bs-toggle="offcanvas" data-bs-scroll=false data-bs-backdrop="true" href="#off-top" role="button" aria-controls="off-top" title="Afficher le menu haut">
Afficher le menu haut
<span class="visually-hidden">Afficher le menu haut</span>
</a>
<div class="offcanvas offcanvas-top w-auto" data-lutece-load-content-url="" data-lutece-load-content-target="" data-lutece-redirectForm=true tabindex="-1" id="off-top" aria-labelledby="off-topLabel">
<div class="offcanvas-header border-bottom d-flex justify-content-between align-items-center">
<h2 class="h4 offcanvas-title p-0 pe-xl m-0 me-xl" id="off-topLabel">Menu Offcanvas - Top </h2>
<button type="button" class="border btn btn-light btn-rounded btn-icon end-0 mx-sm p-0" data-bs-dismiss="offcanvas" aria-label="Fermer">
<svg class="paris-icon paris-icon-close mt-xs"data-mce-svg="paris-icon paris-icon-close" aria-hidden="true" focusable="false" role="img">
<use href="#paris-icon-close"></use>
</svg> </button>
</div>
<div id="offcanvas-body-off-top" class="offcanvas-body text-break ps-xl">
<ul >
<li>
Menu 1</li>
<li>
Menu 2</li>
</ul>
</div>
</div>
<a id="btn-off-start" class="btn btn-primary " onclick="event.preventDefault();" data-bs-toggle="offcanvas" data-bs-scroll=false data-bs-backdrop="true" href="#off-start" role="button" aria-controls="off-start" title="Afficher le menu de droite">
Afficher le menu de droite
<span class="visually-hidden">Afficher le menu de droite</span>
</a>
<div class="offcanvas offcanvas-start w-auto" data-lutece-load-content-url="" data-lutece-load-content-target="" data-lutece-redirectForm=true tabindex="-1" id="off-start" aria-labelledby="off-startLabel">
<div class="offcanvas-header border-bottom d-flex justify-content-between align-items-center">
<h2 class="h4 offcanvas-title p-0 pe-xl m-0 me-xl" id="off-startLabel">Menu Offcanvas - Right </h2>
<button type="button" class="border btn btn-light btn-rounded btn-icon end-0 mx-sm p-0" data-bs-dismiss="offcanvas" aria-label="Fermer">
<svg class="paris-icon paris-icon-close mt-xs"data-mce-svg="paris-icon paris-icon-close" aria-hidden="true" focusable="false" role="img">
<use href="#paris-icon-close"></use>
</svg> </button>
</div>
<div id="offcanvas-body-off-start" class="offcanvas-body text-break ps-xl">
<ul >
<li>
Menu 1</li>
<li>
Menu 2</li>
</ul>
</div>
</div>

Paramètres

Voici la liste des différents paramètres de la macro :

  • id (string) required - l'ID du composant hors-canvas.
  • position (string) optionnal - la position du composant hors-canvas "start", "end", "top", ou "bottom".
  • title (string) optionnal - le titre du composant hors-canvas.
  • btnTitle (string) optionnal - le texte sur le bouton de bascule.
  • btnColor (string) optionnal - la couleur du bouton de bascule.
  • btnIcon (string) optionnal - l'icône pour le bouton de bascule.
  • btnClass (string) optionnal - classes supplémentaires pour le bouton de bascule.
  • bodyClass (string) optionnal - classes supplémentaires pour le corps du hors-canvas.
  • backdrop (boolean) optionnal - si un arrière-plan doit être affiché lorsque le composant hors-canvas est ouvert.
  • size (string) optionnal - la taille du composant hors-canvas "full", "half", "auto", ou "sm".
  • btnSize (string) optionnal - la taille du bouton de bascule.
  • targetUrl (string) optionnal - l'URL pour charger le contenu lorsque le composant hors-canvas est ouvert.
  • targetElement (string) optionnal - l'ID de l'élément dans lequel charger le contenu.
  • redirectForm (boolean) optionnal - si le formulaire doit être redirigé lors de la soumission.
  • badgeContent (string) optionnal - le contenu du badge sur le bouton de bascule.
  • badgeColor (string) optionnal - la couleur du badge.

Aide

Génère un composant hors-canvas pour un panneau coulissant en superposition.

@cGoToTop

Exemple

<@cGoToTop />

<button class="btn btn-primary fadein btn-gototop" type="button">
<span class="btn-label ">Top of the page</span>
<span class="main-info-color">
&#8593;</span>
</button>
<script>
const gototop = document.querySelector('.btn-gototop');
document.addEventListener( "DOMContentLoaded", () => {
document.addEventListener("scroll", (e) => {
// Check regular scroll behavior
if (document.documentElement.scrollTop > 100) {
gototop.classList.add('active');
} else {
gototop.classList.remove('active');
}
// Calculate distance from bottom of page
const scrollHeight = document.documentElement.scrollHeight;
const viewportHeight = window.innerHeight;
const scrollPosition = document.documentElement.scrollTop;
const distanceFromBottom = scrollHeight - (scrollPosition + viewportHeight);
// Get root font size for rem conversion (typically 16px)
const rootFontSize = parseFloat(getComputedStyle(document.documentElement).fontSize);
const threshold = 15 * rootFontSize; // 15rem in pixels
// Adjust bottom property when near page bottom
if (distanceFromBottom <= threshold) {
if( document.querySelector('footer.social') ) {
gototop.style.bottom = "26rem"; // Adjust for social footer
} else {
gototop.style.bottom = "22rem"; // Default bottom position
}
} else {
gototop.style.bottom = "3rem"; // Reset to default from CSS
}
// Hide/show span with class .btn-label based on scrolling state
const btnLabel = gototop.querySelector('.btn-label');
if (btnLabel) {
// Clear existing timeout
clearTimeout(window.scrollTimeout);
// Hide label while scrolling
btnLabel.style.display = 'none';
// Show label when scrolling stops
window.scrollTimeout = setTimeout(() => {
btnLabel.style.display = '';
}, 500);
}
});
gototop.addEventListener( 'click', (e) => {
e.preventDefault();
window.scrollTo({
top: 0,
left: 0,
});
});
});
</script>

Paramètres

Configurable en BO

L'affichage du bouton "Retour en haut de page" est disponible dans le propriété du site, "Thème Paris.fr", bouton "Ajouter le bouton "Retour en haut"

Voici la liste des différents paramètres de la macro :

  • scrollLabel (string) optionnal - Nom du menu par défaut - Top of the page / Haut de page -
  • scrollClass (string) optionnal - Classe CSS de l'effet de scroll sur le bouton. Par défaut "primary fadein"
  • scrollBtnClass (list) optionnal - Classe CSS du bouton. Par défaut "btn-gototop"
  • scrollTop (string) optionnal - Offset top par défaut pour apparition du bouton. Par défaut 100

Plan du site

Paramètres

Configurable en BO

Accéder aux propriétés du site ( menu "Administration du site / Propriétés du site" ou bouton ), onglet "Configuration du Thème Parisfr ".

Le bouton "Afficher / masquer le menu du plan du site" peremt de gérer l'apparition du lien du "Plan du site" dans le pied de page.

Information

Le plan du site par défaut est géré par une feuille de style XSL.

Il est possible de surcharger le plan du site en modifiant la XSL qui est téléchargeable depuis le BO du site, menu 'Charte / Gestion des feuilles de style XSL'.

Le fichier est téléchargé est nommé "site_map_theme.xsl". Vous pourrez le mettre à jour et le ré-uploader.

Go to the site Paris.fr
Thème Paris.fr
  • Paris.fr [New window]
  • site map
  • Contact [New window]
  • Condition généales d'utilisation [New window]
  • Politique de gestion des données à caractère personnel [New window]
  • Cookies policy [New window]

Follow us

  • Facebook
  • Bluesky
  • Instagram
  • LinkedIn

Get weekly news from your city on social’s network