区分WORDPRESS user_loginuser_nicenameuser_displayname

Posted code-is-poetry

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了区分WORDPRESS user_loginuser_nicenameuser_displayname相关的知识,希望对你有一定的参考价值。

开发过程中用到用户项,那么这几个概念就很重要了,一定要搞清,否则就会出问题。


1.user_login就是用户注册时输入的用户名(WORDPRESS默认不允许中文注册,需要修改formatting.php)。


2.user_nicename是经过url特殊字条过滤后的user_login,其实在用户的注册用户名不包含特殊字符时(比如@什么的)user_nicename和user_login一样。无论是user_nicename还是user_login,用户都没有修改的权限,管理员也没有(操作数据库除外)。user_login用于用户登录,而user_nicename的惟一用途是产生用户url页面,即http://news.12reads.cn/author/zgl,‘zgl’就是user_login。Wordpress 产生用户url的函数如下:

function get_author_posts_url( $author_id, $author_nicename = '' ) 
	        global $wp_rewrite;
	        $auth_ID = (int) $author_id;
	        $link = $wp_rewrite->get_author_permastruct();
	
	        if ( empty($link) ) 
	                $file = home_url( '/' );
	                $link = $file . '?author=' . $auth_ID;
	         else 
	                if ( '' == $author_nicename ) 
	                        $user = get_userdata($author_id);
                        if ( !empty($user->user_nicename) )
	                                $author_nicename = $user->user_nicename;
	                
	                $link = str_replace('%author%', $author_nicename, $link);
                $link = home_url( user_trailingslashit( $link ) );
        
	

对着代码看就好理解了,这就是用户链接http://news.12reads.cn/author/zgl的产生过程,其中user_nicename至关重要: 如果没有启用固定链接--->用户页面为/author=ID; 如果user_nicename不为空,则用户页面为/author/user-nicename.


3.user_displayname相当于昵称,用户可以自由修改。


通过wp_user表来看就更一目了然了:




以上是关于区分WORDPRESS user_loginuser_nicenameuser_displayname的主要内容,如果未能解决你的问题,请参考以下文章

区分WORDPRESS user_loginuser_nicenameuser_displayname

typecho和wordpress模板了解开发流程介绍前台后台前端后端区分

在wordpress中通过ip地址区分不同国家的用户并重定向他们到不同的...

Docker-compose部署wordpress

WordPress5.3.2手动升级

Wordpress实现自定义ajax请求