Le lien de menu, colonne vertébrale de Joomla!

Le lien de menu colonne vertébrale de Joomla!

Nous allons expliquer ici l'importance du lien de menu dans le fonctionnement de votre site Joomla!

S’il y a quelque chose de central dans Joomla, c’est bien le lien de menu ! Pour mieux en comprendre l’importance, voici une petite infographie qui retrace très schématiquement ce qui se passe lors de l’appel d’un article dans Joomla! [Pour simplifier, nous avons évacué la gestion des langues et autres petits (hum, hum) détails…]

Le lien de menu, colonne vertébrale de Joomla!

L'appel du contenu

Celui-ci est loin de suivre un azimut brutal, il va glaner sur son chemin les différents éléments qui vont constituer la page. Car comme vous le savez, les pages de votre site n’existent pas en tant que telles, mais se constituent lors de leur convocation.

Si j’appelle la page actualités de mon site, par le bais d’un lien de menu de type blog de catégorie, paramétré pour afficher un article en pleine largeur et deux intro, affichés par date, ce sont les trois derniers articles qui vont s’afficher sur la page. Mais si je n’ai que deux articles disponibles, la page n’affichera que deux articles. Miracle du CMS qui construit les pages en fonction de ma requête et de ce qui peux y répondre !

Un appel, plusieurs possibilités

On peut dégager trois cas de figure :

  1. Il existe un lien de menu
  2. Il existe un lien de menu apparenté
  3. Il n’existe pas de lien de menu

lien-de-menu-joomla-illus-01

Dans le cas A, l’appel a lieu directement par un lien de menu et nous avons donc le fameux itemid. C’est-à-dire l’identifiant numérique unique du lien de menu dans la base de données. Joomla va donc aller chercher ce qui est assigné à ce lien de menu : template, modules…

Dans le cas B, l’appel est fait par un lire la suite par exemple. N’ayant pas d’itemid au départ de l’appel, Joomla va aller chercher s’il existe un lien de menu dans la base de données vers l’article appelé, ou même un lien vers la catégorie de l’article. Comme il y a un lien de menu "actualités" qui mène vers cette catégorie, Joomla va donc aller chercher ce qui est assigné à ce lien de menu que j’appellerai apparenté : template, modules…

Dans le cas C, nous avons ni lien de menu au départ, ni lien de menu apparenté. Que va donc faire Joomla ? La réponse est simple : il va se servir de l'ItemId origine de la page où le clic a eu lieu ! Joomla va donc afficher l’article dans la mise en page qui est celle de la page de l’appel.

Cela explique pourquoi mon joli module de slider qui est assigné uniquement en page d’accueil, est encore là quand on a cliqué sur le lire la suite d’un article lui aussi en page d’accueil. Cet article et sa catégorie ne sont pas desservis par un autre lien de menu : Joomla reste dans la mise en page existante lors du clic.

Joomla! 3 Le Livre Pour Tous

joomla 3 le livre pour tous

Écrit pour toutes les personnes qui débutent avec Joomla!, ou qui possèdent déjà quelques connaissances avec les versions précédentes, et qui souhaitent construire et entretenir un site web sans avoir à entrer dans le code.

version numérique

9€

Ajouter au panier

version papier

23€

Ajouter au panier

En route vers le rendu de la page

  1. Le clic a lieu depuis : A un lien de menu, B un lire la suite avec un lien de menu apparenté ou C une liste d'articles. 
  2. On requête la base de données
  3. On récupère le template assignée à l'ItemId
  4. On extrait les positions de publications de module dudit template
  5. On récupère les modules publiés, avec vérification des droits, sur cet ItemId
  6. On récupère le contenu de l'article, avec vérification des droits de lecture

Et on affiche la page telle qu'elle doit être.

Le lien de menu joomla, illustration 02

Comment pallier à ce souci ? C’est tout simple, en créant un lien de menu vers la catégorie dans un autre menu que le menu principal, menu qui d’ailleurs peut ne pas être affiché et ne servir qu’à gérer les assignations de modules et de template.

Assistance Joomla!

Icone assistance

Vous créez ou générez un site web et vous avec besoin de conseils ou d'une intervention afin de mener à bien votre projet. Contactez nous, nous pourrons rapidement vous assister par mail ou par téléphone.

Crédits photo

Photo de Clem Onojeghuo provenant de Pexels