Comment afficher un menu différent aux membres connectés sur WordPress ?

Lorsque l’on gère une communauté ou un site avec un espace membre, on doit parfois pouvoir afficher des menus différents en fonction de notre visiteur. Par exemple, s’il n’est pas connecté nous afficherons un lien pour s’inscrire , commander notre livre, etc…. En revanche, s’il est identifié (connecté) on lui proposera un lien pour se déconnecter, pour accéder au téléchargement du dit livre/produit, etc… Les possibilités sont infimes.

Comment afficher un menu différent pour les membres connectés à un site WordPress ?

Remplacez simplement le code d’appel de votre menu dans votre thème par le code suivant :

// Afficher un menu différent pour les membres
function wpln_menu_membres( $args = '' ) {
    if( is_user_logged_in() ) { 
        $args['menu'] = 'menu-membres';
    } else { 
        $args['menu'] = 'menu-visiteurs';
    } 
    return $args;
}
add_filter( 'wp_nav_menu_args', 'wpln_menu_membres' );

Si vous ne l’avez pas déjà fait, il faudra déclarer le second (où les deux) menu.s dans votre fichier functions.php, sans quoi il n’existera pas et vous ne pourrez pas lui assigner de menu ;-). Il faudra bien évidemment penser à modifier « menu-membres » & « menu-visiteurs » par les noms de vos menus.

Gregory

Agitateur de Stratégies, addict à WordPress depuis 2003, fada de Google depuis 1998. Incubateur Digital, j'accompagne au quotidien plusieurs entreprises et indépendants dans la gestion de leur stratégie digitale et l'optimisation de leurs sites WordPress. Basé à Aix-en-Provence, je suis à l'écoute de votre projet si vous avez besoin d'un expert WordPress.

Vous aimerez aussi

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *