我正在努力破解默认的Jomsocial Registration.Problem是,如果您看到默认的jomsocial注册页面,它具有默认核心joomla注册页面中的所有字段。名称,用户名,E-邮件,密码,验证密码。
但是我想在这个jomsocial页面上添加一个额外的字段。现在如果我使用自定义配置文件添加一个额外的字段,那么用户必须单击下一步并转到下一页,这是一个漫长的过程,并给我高跳出率用户注册。
那么请你就此向我提出建议,还有一件事就是如果我们在Joomla默认注册页面中添加一个字段它将自动进入jomsocial第一页..
如果有人可以帮助我解决这个问题,那将会很感激。
答案 0 :(得分:3)
您可以按照以下流程在第一页上添加自定义注册字段(与joomla 2.5配合使用):
步骤1:您必须添加该字段以使其显示在第一页(前端)上,然后转到components \ com_community \ templates \ default \ register.index.php
现在只需将字段添加为其他字段,例如(将FIELD作为要添加的字段名称)
请参阅此处的示例:Click Here!
您可以复制并粘贴其他字段详细信息然后自行编辑,标签标签显示标签将如何显示在前端,输入字段显示输入字段,您可以调整大小,但不应更改id,name(收集数据时需要的名称)和值(除了用新的字段名称替换以前的字段名称之外的其他地方!),可以根据需要编辑类,比如删除'required'将使字段可选填充,如果要使用某些脚本为输入的值验证字段,则使用validate-FIELD; span用于显示错误消息...现在,当您添加字段以使其显示在首页,你必须做一些工作,以便在提交表单时实际将数据带到数据库!所以我们去---
步骤2:提交表单时,数据不存储在prefix_users表中,但会创建一个存储临时信息的对象,然后将其存储在com_community \ models \ register.php中,现在更改对象并添加一个字段,以便对象也包含我们字段的值,我们必须在其中添加一行,您将看到像
这样的代码$obj = new stdClass(); $obj->name = $data['jsname']; $obj->firstname = isset( $data['jsfirstname'] ) ? $data['jsfirstname'] : ''; $obj->lastname = isset( $data['jslastname'] ) ? $data['jslastname'] : ''; $obj->token = $token; $obj->username = $data['jsusername']; $obj->FIELD = $data['jsFIELD']; $obj->email = $data['jsemail']; $obj->password = $data['jspassword']; $obj->created = $nowDate; $obj->ip = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ?
在上面的代码中,在第7行我添加了我的字段,以便在提交表单时对象也存储我们的字段,现在我们必须在表中添加一个字段,实际存储该对象片刻,该表是prefix_community_register
表格就像 -
1 id int(10) 2 token varchar(200) 3 name varchar(255) 4 firstname varchar(180) 5 lastname varchar(180) 6 username varchar(150) 7 email varchar(100) 8 password varchar(100) 9 created datetime 10 ip varchar(25) 11 FIELD int(11)
表的第11个字段是我们要添加的字段,它必须与对象内的字段具有相同的名称(例如,如果对象具有$ obj-> age,则表中字段的名称必须为'也是'年龄'!),所以现在最后我们需要在prefix_users表中永久存储相同的数据,因此在表中创建一个具有相同名称和属性的字段,当注册完成时,该值将存储在用户中也可以在任何地方使用该字段;)
答案 1 :(得分:0)
转到管理员 - >组件 - > Jom social - >自定义配置文件 - >新领域。
在这里,您可以轻松添加新字段.. !!
我认为它会对你有所帮助.. !!
答案 2 :(得分:0)
我实际上使用的是Jom Social和Joomla。我已经使用了它们很长一段时间,这里是这个问题答案的链接。
我不确定它是否在3.0 JomSocial中有所改变,但这应该有所帮助。 Jomsocial Custom Profile - Display email used on first page of registration onto the second page of registration
另请注意,您始终可以创建自己的注册页面,然后允许用户从其编辑个人资料页面填写次要个人资料信息。登录后,只需重定向到编辑个人资料。
用于构建自定义表单的好组件是http://fabrikar.com。
希望此信息有所帮助