如何检查用户是否为网络中的站点所有者?

时间:2015-10-28 作者:1.21 gigawatts

我不小心用了is_admin() 检查用户是否是管理员,并发现该函数没有检查该用户。所以我又找了一个is_super_admin() 但这会检查你是一个网站网络的管理员还是一个WordPress安装的所有者。我有一个网络站点,我想知道用户是否是博客的所有者。我不想使用角色。我想检查用户是否是博客的所有者。

2 个回复
最合适的回答,由SO网友:Burgi 整理而成

我过去也有过类似的问题,WordPress确实需要is_user_admin() 作用

与此同时,我认为最好的方法是测试用户是否具有某些功能。

function is_user_admin(){
    if(!is_super_admin() && current_user_can(\'activate_plugins\'){
        // User is an admin
    }
}
参考号:

SO网友:Ted

只有当superadmin在网络设置中启用了该权限时,“activate\\u plugins”卷才起作用,而superadmin通常不会启用该权限——默认情况下,它是禁用的。正确的方法是使用“管理员”角色。

if(current_user_can(\'administrator\')) {echo "User is admin!";}
请参阅第页的卷摘要https://codex.wordpress.org/Roles_and_Capabilities.