Skip to content

Instantly share code, notes, and snippets.

@willybahuaud
Last active October 16, 2016 17:23
Show Gist options
  • Save willybahuaud/cb53ad2a1b7ee7d1a0fee09b3d0d12f5 to your computer and use it in GitHub Desktop.
Save willybahuaud/cb53ad2a1b7ee7d1a0fee09b3d0d12f5 to your computer and use it in GitHub Desktop.
Filtrer les éléments d’un menu selon que l’utilisateur est connecté
<?php
add_filter( 'wp_nav_menu_objects', 'willy_filter_wp_nav_menu_object_by_user_status' );
function willy_filter_wp_nav_menu_object_by_user_status( $items ) {
if ( ! is_admin() ) {
foreach ( $items as $k => $item ) {
if ( is_array( $item->classes )
&& ( ( in_array( 'logged-only', $item->classes ) && ! is_user_logged_in() )
|| ( in_array( 'not-logged-only', $item->classes ) && is_user_logged_in() ) ) ) {
unset( $items[ $k ] );
}
}
}
return $items;
}
@willybahuaud
Copy link
Author

willybahuaud commented Oct 14, 2016

Ajouter ce filtre où bon vous semble (theme, extension, extension automatique…) et appliquer les classes loggen-only et not-logged-only sur les éléments de menu que vous souhaitez filtrer selon le statut de connexion de l’utilisateur.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment