Comment n’autoriser que les utilisateurs connectés à accéder au contenu d’un élément de menu visible par tous.
Rediriger les invités vers une page de connexion/enregistrement Vous souhaitez que seuls les utilisateurs connectés puissent accéder au contenu d’un élément de menu visible par tous. Supposons que vous ayez sur votre site certains éléments de menu qui requièrent que l’utilisateur soit connecté pour accéder au contenu, comme par exemple “Proposer un article“. Vous souhaitez que tous les utilisateurs puissent voir l’élément de menu, qu’ils soient connectés ou non, et vous souhaitez que seuls les utilisateurs connectés puissent accéder au contenu.
Si les utilisateurs sont connectés, il peuvent directement se rendre vers le contenu de l’élément de menu.
S’ils ne sont pas connectés :
ils sont dirigés vers un formulaire de connexion, et
une fois connectés, ils sont redirigés vers la page à contenu restreint.
S’ils ne sont pas connectés, ils ont la possibilité de s’enregistrer, ou de naviguer vers une autre page.
Solution
Voici comment faire avec Joomla!
1. Créez un nouveau menu à partir du gestionnaire de menu, donnez lui par exemple le nom “menu caché”.
2. Ajoutez tous les éléments de menu qui ne seront accessibles qu’aux utilisateurs enregistrés (par exemple : “Proposer un article“). Réglez le niveau d’accès requis pour ces éléments de menu (“Spécial” dans cet exemple, mais cela peut également être “Enregistré”).
3. Ne créez PAS de module pour ce “menu caché”. Il ne sera affiché sur aucune page, il n’a donc pas besoin de module.
4. Créez votre menu “réel”, (par exemple “menu principal”) et les éléments de menu qui seront affichés pour tous les utilisateurs (par exemple : “Proposer un article”).Créez votre élément de menu en choisissant le type “Alias”.Dans le paramètre “Paramètres requis” choisissez l’élément de menu “Proposer un article” du menu caché.Réglez le niveau d’accès de cet élément de menu sur “Public” puisque nous souhaitons que tout le monde puisse le voir et le cliquer.
5. Créez un menu de type “mod_mainmenu” pour ce menu, puis publiez-le.
Vous pouvez également publier votre élément de menu dans un menu existant.