我有一个Excel文档,其中包含需要在Expression Engine中作为成员导入的2000个用户的详细信息 - 使用“成员导入”实用程序。
我到底在哪里开始?
第一个问题 - 将Excel文档转换为XML格式。
第二个问题 - 包括60多个自定义成员字段。
第三个问题 - 确保每个用户都有唯一的用户名,screen_name,密码,salt,unique_id和crypt_key。
任何帮助都非常感激。
答案 0 :(得分:1)
我建议绕过Member Import Utility并编写一个直接写入数据库的自定义PHP脚本。您可以将Excel文档导出为CSV并使用parsecsv之类的内容将其解析为PHP数组。
首先设置所有自定义成员字段,手动添加几个示例成员,然后检查exp_member_ *数据库表以查看数据的排列方式。您可以将脚本INSERTS作为基础。
如果您将此自定义脚本编写为EE模块或插件(或仅作为启用PHP的模板),则可以绕过设置数据库连接并使用Database class进行插入。
答案 1 :(得分:1)
我工作了。
第一个问题 - 将Excel文档转换为XML格式。
创建XML架构,然后在Excel中>开发人员标签>来源> XML地图>拖放地图A:1,将制表符动画数据复制并粘贴到A:2
第二个问题 - 包括60多个自定义成员字段。
在EE中,如果您只是取消选中“创建自定义字段”,则会相应地插入所有自定义成员字段/ XML标记。
第三个问题 - 确保每个用户都有唯一的用户名,screen_name,密码,salt,unique_id和crypt_key。
使用此 - http://dosysadminsdream.wordpress.com/2011/07/01/generating-random-passwords-in-excel/ - 在Excel VB中为密码创建一个模块。确保您的XML在密码标记中具有type ='text'属性,EE将自行执行MD5。
答案 2 :(得分:1)
如果您对商业插件没问题,可以使用Zoo Visitor和Andrew Weaver DataGrab的组合来完成此操作。首先,设置Zoo Visitor,并在Zoo Visitor通道中为要导入的所有数据创建字段。然后使用DataGrab将您的记录导入频道。由于Zoo Visitor在其频道中创建条目时会自动创建成员,因此在运行导入时,您将获得成员和频道条目。
如果它是一次性的,并且您希望所有数据都在成员字段中(而不是在频道字段中,这是ZV所做的),您可以轻松地执行一些额外的步骤。创建所需的成员字段,直接对数据库运行快速查询以更新相应通道字段中的所有成员字段,然后终止通道并卸载Zoo Visitor和DataGrab。 (如果导入是常规的事情,我建议跳过这部分并将内容留在Zoo Visitor和频道中。)
答案 3 :(得分:0)
也许您可以使用Zoo Visitor来管理您的会员,并使用DataGrab导入。