user_can 和 current_user_can 判断用户是否有某个权限或是否为某个角色

Posted in:
Update time:2024-08-01

函数描述

判断用户是否有某个权限或是否为某个角色,比如我们需要判断当前登录的用户是否为管理员,或者是否有作者权限。user_can 和 current_user_can 的功能一样,返回结果也一样,current_user_can 只是 user_can 的一个封装。

Usage

user_can

current_user_can( $user, $capability, $args );
parametersdata typeRequired or notdescriptivedefault value
$user整数|WP_User 对象be用户 ID 或用户对象not have
$capabilitystring (computer science)be角色或权限名称not have
$argsmulti-clogged可选参数,通常为对象 ID。 not have

current_user_can

current_user_can 其实就是 user_can 的一个快捷方式,把当前登录的用户作为了 user_can 的第一个参数 $user 提供了过去。

current_user_can( $capability, $args );

parameters

parametersdata typeRequired or notdescriptivedefault value
$capabilitystring (computer science)be角色或权限名称not have
$argsmulti-clogged可选参数,通常为对象 ID。 not have

return value

(布尔值) 指定的用户是否有某个权限或是否为某个角色。

usage example

判断当前用户是否可以编辑某文章。

if (current_user_can('edit_post', 1)) {
    echo '当前用户可以编辑 ID 为 1 的文章';
}

如果当前用户不是管理员或没有管理访问权限,则隐藏管理员栏。

if ( ! current_user_can( 'manage_options' ) ) {
    add_filter( 'show_admin_bar', '__return_false' );
}

显示只有管理员才可以看到的文字

if( current_user_can('administrator') ) {
    echo '只有管理员才可以看到的文字。';
}

We offer WordPress Themes and Plugins Custom Development Services

This site has long undertaken WordPress themes, plugins, WooCommerce-based store mall development business. We have 10 years of experience in WordPress development, if you want to Developing Websites with WordPress, please contact WeChat: iwillhappy1314 or email: amos@wpcio.com for inquiries.

发表回复

Your email address will not be published. 必填项已用 * 标注

*