用户只能看到他们自己的个人资料

时间:2014-07-21 作者:Toni Ojsteršek

如果我以管理员身份登录,我希望可以查看所有用户的配置文件,如果他们以订阅者身份登录,例如,“toni123456”,我可以只查看您的配置文件“toni123456”。这是一个模板域/wordpress/author/user\\u名称

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

在模板中,如果用户是超级管理员,或者用户具有某些功能,则可以执行条件检查(如果您希望以管理员为目标,而不仅仅是超级管理员)

First case

if (is_super_admin() ) {
    //your super admin logic here
}else{
    //subscriber logic
}

Second case

if ( current_user_can( \'manage_options\' ) ) {
    //your admin logic here
} else {
    //subscriber logic
}

http://codex.wordpress.org/Function_Reference/is_super_admin

http://codex.wordpress.org/Function_Reference/current_user_can

在此,您还可以使用此功能检查用户角色

http://docs.appthemes.com/tutorials/wordpress-check-user-role-function/

UPDATE

根据op问题更新

if(is_user_logged_in()){
    if ( current_user_can( \'manage_options\' ) ) {
        //your admin logic here
    } else {
        $current_user = wp_get_current_user();
        $curauth = (get_query_var(\'author_name\')) ? get_user_by(\'slug\', get_query_var(\'author_name\')) : get_userdata(get_query_var(\'author\'));

        if($current_user->user_login == $curauth->user_login){
          // User is the same as author, show the panel
        }else{
          //different user and author, access forbidden.
        }
    }
}else{
    echo \'Access forbidden\';
}

结束

相关推荐

插件管理菜单中的EDIT-TAGS.php在活动页面时隐藏

对于我正在构建的插件,我在admin中的自定义主菜单项中添加了一个子菜单作为子菜单。子菜单页是edit-tags.php 页这将按预期显示在主菜单项下。单击此子菜单项时,用户将进入正确的页面,但主菜单项会向下折叠,隐藏当前打开的子菜单项。我最初的感觉是父slug属性是错误的,但我添加的其他子菜单使用相同的父slug属性,并且它们工作正常。很明显,我在add_submenu_page() 函数,但我不知道是什么。下面是我注册子菜单的方式:$this->plugin_screen_dashboard =