无法从前端编辑配置文件

时间:2012-06-01 作者:uknowit2

希望你能帮忙。

Background:

我有一个多站点配置。用户需要能够通过他们的个人资料页面从前端更新他们的个人资料,这类似于,http://example.com/forum/user/[email protected] 感谢bbpress。

然而,只有超级管理员才能编辑他们的个人资料。在他们的名字旁边有一个小小的编辑链接,但如果他们不是超级管理员,那么它就不起作用了。我怎样才能解决这个问题?

提前感谢

2 个回复
SO网友:Jake

只有超级用户才能在Wordpress Multisite中编辑配置文件。这是因为用户配置文件在多站点中是独立于站点的。一个用户有一个配置文件,但可能是具有多个所有者的多个站点的成员。你不能让他们中的一个篡改用户的个人资料。。。

如果你真的想控制这一切,你可以。例如,我有一个锁定的多站点,其中用户永远都是单个站点的成员,这些管理员需要能够像独立安装一样运行它们。

尝试将其添加到函数中。php或创建插件,以便您可以将其添加到具有不同主题的多个站点:

/**
 * Change so site admins can edit user profiles, normally, on a network normally only superadmins can
 */
function custom_admin_users_caps( $caps, $cap, $user_id, $args ){

    foreach( $caps as $key => $capability ){

        if( $capability != \'do_not_allow\' )
            continue;

        switch( $cap ) {
            case \'edit_user\':
            case \'edit_users\':
                $caps[$key] = \'edit_users\';
                break;
            case \'delete_user\':
            case \'delete_users\':
                $caps[$key] = \'delete_users\';
                break;
            case \'create_users\':
                $caps[$key] = $cap;
                break;
        }
    }

    return $caps;
}
add_filter( \'map_meta_cap\', \'custom_admin_users_caps\', 1, 4 );
remove_all_filters( \'enable_edit_any_user_configuration\' );
add_filter( \'enable_edit_any_user_configuration\', \'__return_true\');

SO网友:Pontus Abrahamsson

是否有类似current\\u user\\u can()的内容。。。或者\\u super\\u admin是否在编辑链接附近?因为这听起来像是Roles abd capabilities

结束

相关推荐

如何在bbpress中从论坛页面删除(0,0)

我想从bbpress中的/论坛页面(论坛是“论坛基础”)中删除尾随(0,0)。该网站还使用buddypress和bbpress作为“群论坛”的一部分进行安装。以下是/论坛页面目前的样子:一般论坛General (0, 0), Methodology (0, 0), Implementation (0, 0), Tools (0, 0), Training (0, 0), New to Lean and Six Sigma (0, 0), The Water