·您当前的位置:首页 > 技术教程 > PHP教程 >

[AS3]WordPress判断用户登陆情况的源代码

时间:2016-06-28 14:30酷播
[AS3]WordPress判断用户登陆情况的源代码

在WordPress主题或者插件开发的过程中,经常要遇到判断登录用户的角色,并根据不同的用户角色赋予不同的权限。下面总结两种比较常用的判断方法。
一、使用 current_user_can() 判断

current_user_can() 可以根据不同角色拥有的权限来判断用户角色,具体的用户权限,可以在Roles and Capabilities 中找到。
判断用户是否为管理员(Administrator)

 

if( current_user_can( 'manage_options' ) ) {
echo 'The current user is a administrator';
}

判断用户是否为编辑(Editor)

 

if( current_user_can( 'publish_pages' ) && !current_user_can( 'manage_options' ) ) {
echo 'The current user is an editor';
}

判断用户是否为作者(Author)

 

if( current_user_can( 'publish_posts' ) && !current_user_can( 'publish_pages' ) ) {
echo 'The current user is an author';
}

判断用户是否为投稿者(Contributor)

 

if( current_user_can( 'edit_posts' ) && !current_user_can( 'publish_posts' ) ) {
echo 'The current user is a contributor';
}

判断用户是否为订阅者(Subscriber)

 

if( current_user_can( 'read' ) && !current_user_can( 'edit_posts' ) ) {
echo 'The current user is a subscriber';
}

二、使用$current_user判断

$current_user是WordPress的一个全局变量,当用户登录后,这个里面就会有用户的角色和权限信息。

当WordPress的init action执行后,就可以安全的使用$current_user全局变量了。
在模板文件中判断登录用户是否为作者(Author)

 

global $current_user;
if( $current_user->roles[0] == 'author' ) {
echo 'The current user is an author';
}

在functions.php中判断用户是否为作者(Author)

 

add_action( 'init', 'check_user_role' );
function check_user_role() {
global $current_user;
if( $current_user->roles[0] == 'author' ) {
echo 'The current user is an author';
}
}

之所以要使用

1

 

add_action( 'init', 'check_user_role' );

是因为$current_user这个全部变量到init action执行时才完成赋值,既然要读它的内容,至少要等到它的内容准备好后再读取。functions.php的代码先与init action执行,所以在functions.php中直接写global $current_user是无法获取用户信息的。

检查用户角色之前,还可以先检查一下用户是否登录

 

<?php
if( is_user_logged_in() ) {
//用户已登录,检查用户角色
}
?>

更简单的方法

还有一种更直接的方法,例如判断当前用户是否为管理员

global $current_user;
if(in_array( 'administrator', $current_user->roles )){
echo 'administrator';
}

Wordpress极酷阳光播放器V3.5最新视频插件
插件官方教程地址:http://v3.cuplayer.com/help/Help515.html

1. 支持WP版本:WordPress 4.5.x / WordPress 4.2.x
2. 多终端跨平台适配:支持PC终端,适配安卓终端,iOS苹果终端观看
3. 支持6种广告功能 :前置广告 / 视频广告 / 暂停广告 / 角标广告 / 后置广告 / 滚动文字广告
4. 所有6种广告广告,都可以换成用户自己的,也可以自由关闭或开启,相当方便
5. 支持各类浏览器:IE6/IE7/IE8/IE9/IE10/IE11/Firefox/谷哥Chrome/QQ浏览器/360浏览器
 
播放器广告功能设定的特别说明(所有广告可以换用户自己的,也可以自由关闭):
如果你要开启或关闭播放器的广告功能,请打开播放器的配置文件,文件如下:
wp-content\plugins\playerV35\player\CuSunV3set.xml
请按自己的实际需求,自由设定广告开启或关闭;所有广告都可以换成用户自己的广告文件;默认自带的广告文件仅为官方提供给用户测试功能;

演示效果参考:

WordPress视频插件演示地址1  :http://wp.cuplayer.com/?p=35   
WordPress视频插件演示地址2  :http://wp.cuplayer.com/?p=47   
WordPress视频插件演示多个视频  :http://wp.cuplayer.com/?p=22  

插件下载地址:

http://www.52player.com/VideoPlayer/2015/031356.html

效果图:

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器