首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Concrete5 5.6/7以编程方式添加用户并丰富属性

Concrete5 5.6/7以编程方式添加用户并丰富属性
EN

Stack Overflow用户
提问于 2015-07-05 10:41:47
回答 1查看 325关注 0票数 0

丰富c5用户属性的最佳工具是什么?

我有包含用户信息的非C5表,这些信息是在旧的cms (non-c5)上创建的,我现在用c5构建新的站点,希望了解迁移用户的最佳途径。

使用SQL是个好主意,还是应该使用php脚本来丰富内容,我已经在c5中创建了用户,并为以后的充实添加了“锚点”电子邮件地址。

如果有人能说出来或者说出一些例子的话,那就太好了。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-10 07:43:31

最后,它非常简单:我将外部用户导出到php数组,并使用c5用户函数来添加用户,并在丰富了他们的示例之后:

代码语言:javascript
复制
$external_users = array({
array('id'=>'1', 'name'='JON', 'email'=>'blank@blank.blank', 'last_name'=>'DOE', 'attr1'=>'smthing', 'attr2'=>'123'),
array(...), ...
});

foreach($external_users as $singleUser_data){
$email = $singleUser_data['email'];
$ui = UserInfo::getByEmail($email);

    if (!is_null($ui)) {
        // Email is already in use, so let's not create the user
        return;
    }

    $userData['uName'] = $singleUser_data['name']." ".$singleUser_data['lastname'];

//users later need to reset password
        $userData['uPassword'] = 'asd52465465456454asd';
        $userData['uPasswordConfirm'] = 'asd52465465456454asd';


     //user registererd
    $ui = UserInfo::register($userData);

    set_new_user_group($ui);
enrichAtributes($ui, $singleUser_data);
        }

function set_new_user_group($ui){
   // assign the new user to a group
    $g = Group::getByName('GroupName');
    $u = $ui->getUserObject();
    $u->enterGroup($g);
}

function enrichAtributes($ui, $singleUser_data){

$ui->setAttribute('atr_handler1', $singleUser_data['attr1']);
    $ui->setAttribute('atr_handler2', $singleUser_data['attr2']);
}

资源:用户程序注册及设置组

用户信息文档(设置属性)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31229513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档