Gestion des menus

Documentation du CMS Natheo

Gestion des menus

Index > Documentation fonctionnelle > Administration > Gestion des menus

Gestion des menus du CMS

Listing des menu

Informations générales

Sidebar : Content > Menus
Droit d’accès : ROLE_CONTRIBTEUR

Base de données

Nom entité : Menu
Nom de la table en bdd : natheo.menu

Nom Type Null Valeur par défaut
id Int(11) Non Aucune
user_id Int(11) Non Aucune
name varchar(255) Non Aucune
type Int(11) Non Aucune
position Int(11) Non Aucune
render_order Int(11) Non Aucune
default_menu boolean false Aucune
disabled boolean false Aucune
created_at datetime Non CURRENT_TIMESTAMP
update_at datetime Oui NULL

Nom entité : MenuElement
Nom de la table en bdd : natheo.menu_element

Nom Type Null Valeur par défaut
id Int(11) Non Aucune
menu_id Int(11) Non Aucune
parent_id Int(11) Non Aucune
page_id Int(11) Non Aucune
column_position Int(11) Non Aucune
row_position Int(11) Non Aucune
link_target varchar(100) Non Aucune
disabled boolean false Aucune

Nom entité : MenuElementTranslation
Nom de la table en bdd : natheo.menu_element_translation

Nom Type Null Valeur par défaut
id Int(11) Non Aucune
menu_element_id Int(11) Non Aucune
locale varchar(10) Non Aucune
text_link varchar(255) Non Aucune
external_link text Non Aucune

Règles de gestions globales

Définition

La gestion des menus permet de créer des menus qui peuvent être rattaché à une ou plusieurs pages. Un menu peut être un header, menu vertical ou encore un footer

Règles de gestions globales du tableau de données

Le tableau de données regroupe l’ensemble des menus enregistrés en base de donnée, le trie par défaut ce fait sur l’id du menu.

Liste des actions possibles

Liste des actions possibles sur le listing des menus

Listing help

Désactiver un menu

Met le champ menu.disabled à true.
Un menu désactivé n’apparait plus sur la partie public du site même si la page auquel le menu est rattachée est elle visible. Dans ce cas, c’est le menu défini par défaut qui s’affichera s’il n’est pas disabled

Activer un menu

Met le champ menu.disabled à false.
Un menu activé est accéssible depuis la partie public du site.

Supprimer un menu

Supprime définitivement le menu de la base de donnée La suppression d’un menu entraine la suppression des éléments suivants :

Modifier un menu

Permet de pouvoir modifier un menu Voir Modifier un menu;

Créer un menu

Permet de pouvoir créer un nouveau menu Voir Créer un menu;

Fixtures

Path du fichier de données : src/DataFixtures/data/content/menu/menu_fixtures_data.yaml
Nom de la fixture : MenuFixtures
Groupe de fixtures : content, menu

Commande pour lancer uniquement cette fixture : php bin/console doctrine:fixture:load --group=menu

Exemple de fixture pour générer les pages

Le fichier de config pour générer les pages est construit sous la forme suivante :

  menu_generic_header:
    user: Aymeric
    name: Generic header
    type: 3
    position: 1
    renderOrder: 1
    disabled: 0
    defaultMenu: true
    menuElement:
      listing:
        page: ''
        disabled: 0
        columnPosition: 1
        rowPosition: 1
        linkTarget: '_blank'
        menuElementTranslation:
          fr:
            locale: fr
            textLink: 'Contenu'
            externalLink: ''
          es:
            locale: es
            textLink: 'es-contenu'
            externalLink: ''
          en:
            locale: en
            textLink: 'en-contenu'
            externalLink: ''
      listing_page:
        page: 'Page_listing_page'
        parent: listing
        disabled: 0
        columnPosition: 1
        rowPosition: 1
        linkTarget: '_blank'
        menuElementTranslation:
          fr:
            locale: fr
            textLink: 'Listing des pages'
            externalLink: '#'
          es:
            locale: es
            textLink: 'es-listing-page'
            externalLink: '#'
          en:
            locale: en
            textLink: 'en-listing-page'
            externalLink: '#'