function lsg_check_tipo_usuario( $args ) {
// print_r($args);
// echo $args['theme_location']."<br>";
// el print_r te devuelve todo en mayuscula: PRIMARY pero se pone minúscula
if ( $args['theme_location'] == 'primary'){
if ( is_user_logged_in() ) {
echo "estas logueado<br>";
$user = wp_get_current_user();
if(current_user_can('manage_options')) {
echo "eres el puto amo Administrador<br>";
}
else {
echo "eres basurilla<br>";
}
// print_r($user);
}
else {
echo "NO LOGUEADO<br>";
}
}
else {
echo "no entra theme_location<br>";
}
return $args;
}
add_filter( 'wp_nav_menu_args', 'lsg_check_tipo_usuario' );
Escribir o ejecutar algo dependiendo el tipo de usuario que sea:
<?php
if (current_user_can('editor') || current_user_can('administrator')) { ?>
...
<?php
}
?>
Aunque mucho mejor ponerlo así:
<?php
$user = wp_get_current_user();
$allowed_roles = array('editor', 'administrator', 'author');
<?php
if (array_intersect($allowed_roles, $user->roles)) { ?>
...
<?php
}
?>

No hay comentarios:
Publicar un comentario