当前浏览:首页 / WordPress函数 / is_user_logged_in()

is_user_logged_in()

判断当前访问者是否为登录用户

in 判断

is 条件判断more...

usermore...


描述

更多类似的主题函数信息,请查看主题开发手册中的条件标签文章。


返回

(bool) 如果用户已登录,则为true;如果未登录,则为false。



源码

查看源码 官方文档


更新日志

版本描述
2.0.0开始引入

使用示例

  • 示例1

    示例:根据用户是否登录显示不同的输出。

    <?php
    if ( is_user_logged_in() ) {
    	echo 'Welcome, registered user!';
    } else {
    	echo 'Welcome, visitor!';
    }
    ?>
    
  • 示例2

    请注意,is_user_logged_in是一个可插入函数,如果调用太早,可能会出现致命错误

    为了解决这个问题,可以将登录检查包装在与init操作挂钩的函数中:

    function example_function()
    {
    	if ( is_user_logged_in() ) 
    	{
    		// code
    	}
    }
    add_action('init', 'example_function');
  • 示例3

    示例:如果有人想在模板的某处添加登录和注销链接。

     		
    <?php if ( is_user_logged_in() ) { ?>
        <a href="<?php echo wp_logout_url(); ?>">Logout</a>
    <?php } else { ?>
        <a href="/wp-login.php" title="Members Area Login" rel="home">Members Area</a>
    <?php } ?>
    
  • 示例4

    示例:从函数文件中,此代码显示登录用户的个人消息。

    /**
     * Give a personalized message for logged in users and a generic one for anonymous visitors
     */
    function wpdocs_personal_message_when_logged_in() {
    	if ( is_user_logged_in() ) {
    		$current_user = wp_get_current_user();
    		printf( 'Personal Message For %s!', esc_html( $current_user->user_firstname ) );
    	} else {
    		echo( 'Non-Personalized Message!' );
    	}
    }
    add_action( 'loop_start', 'wpdocs_personal_message_when_logged_in' );
    
  • 示例5
    /**
     * Redirect to Home page if user attempts to try go to login if logged in
     * @author Arslan <arslan@wpbrigade.com>
     * @return void
     */
    function redirect_to() {
    	global $pagenow;
    
    	if ( !is_customize_preview() && is_user_logged_in() && 'index.php' !== $pagenow ) {
    		wp_redirect( home_url(), 302 );
    		exit();
    	}
    }