2013-11-13 4 views
8

Я довольно новичок в Wordpress. На моей домашней странице у меня есть панель навигации. Я хочу показать их только тем пользователям, которые вошли в систему как пользователи, а не наоборот.Wordpress проверить, если пользователь зарегистрирован

На моем header.php функция is_logged_in не работает.

Я хочу поместить условие в файл header.php, чтобы проверить, вошел ли пользователь в систему (тогда отобразите навигацию), а еще нет.

Любой совет будет полезен.

+0

Вы испробовали функцию is_user_logged_in()? –

+0

Давайте посмотрим код. –

+0

http://codex.wordpress.org/Function_Reference/is_user_logged_in – Jithin

ответ

21

пытаются использовать is_user_logged_in функцию

if (is_user_logged_in()) { 
    // your code for logged in user 
    } else { 
    // your code for logged out user 
    } 
+2

«На моем header.php функция is_logged_in не работает». – Hobo

+0

is_user_logged_in отлично работает в файле header.php.i проверил, что –

+0

is_user_logged_in работает везде без каких-либо проблем, даже если вы можете использовать его и на внешних страницах, но вам нужно включить wp-load.php в свой файл –

1

Try следующий код, который работал хорошо для меня

global $current_user; 
get_currentuserinfo(); 

Затем используйте следующий код, чтобы проверить, был ли пользователь вошел в систему или нет.

if ($current_user->ID == '') { 
    //show nothing to user 
} 
else { 
    //write code to show menu here 
} 
-1

Я думаю это. Когда гость запускает страницу, но Admin не регистрируется, мы ничего не показываем, например Чат.

add_action('init', 'chat_status'); 

function chat_status(){ 

    if(get_option('admin_logged') === 1) { echo "<style>.chat{display:block;}</style>";} 
     else { echo "<style>.chat{display:none;}</style>";} 

} 



add_action('wp_login', function(){ 

    if(wp_get_current_user()->roles[0] == 'administrator') update_option('admin_logged', 1); 
}); 


add_action('wp_logout', function(){ 
    if(wp_get_current_user()->roles[0] == 'administrator') update_option('admin_logged', 0); 
}); 
Смежные вопросы