2012-02-09 158 views
4

我为我的网站运行Joomla 2.5.1。Joomla! - 如何为用户注册添加额外信息?

对于用户注册,只有名称,用户名,密码,确认密码,电子邮件地址和确认电子邮件地址。

我能去“用户配置文件”,并启用领域,如地址,国家,等等。
不过,我想补充的附加信息如公司名称等。

我可以知道如何做到这一点?

+0

请帮助! – Lloydworth 2012-02-09 08:01:18

+0

如果您想充分利用自定义字段,Community Builer可能是您的最佳选择。它也与其他组件如Kunena集成在一起,这可能是一个优势。更新你的Joomla版本到2.5.7,而你在它;) – Lodder 2012-10-20 01:34:27

回答

1

joomla 2.5.1注册页面有两个相对字段。
的视图部分:

Joomla_2.5.1/components/com_users/views/registration/tmpl/default.php 

,这将有可能得到其相关文件中的数据是:

Joomla_2.5.1/components/com_users/controllers/registration.php 
Joomla_2.5.1/components/com_users/models/forms/registration.xml 
Joomla_2.5.1/components/com_users/models/registration.php 

试图修改这些文件

+0

对不起,因为我很新的PHP编程,你会介意指导我?我不太确定如何编辑这些文件。 – Lloydworth 2012-02-09 08:27:09

+0

我只知道第一步是编辑registration.xml文件并添加我需要的字段。之后我该怎么办? – Lloydworth 2012-02-09 08:27:50

1

最简单的方法是使用扩展Community Builder 。它是最受欢迎的Joomla!扩展,并且它有很多功能。允许您作为网站管理员为用户个人资料定义额外的字段仅仅是它的开始。

因为它被称为CB,它有一个插件架构。 CB开发人员和其他人都开发了插件,让您可以扩展CB可以为您做的事情。连接到Facebook和Twitter,付费订阅,评价其他用户 - 有很多可能性。

CB是免费软件,GPL授权。但是,您支付访问文档和支持的费用。另外,一些插件是专有软件。

更新:CB的当前版本是1.7.1,它支持Joomla! 1.0到1.7,但不是Joomla 2.5.x.但截至2012年2月7日,Community Builder 1.8 is in RC。它支持并已通过所有Joomla测试!通过2.5.1的版本。 RC代表“Release Candidate”,因此它尚未准备好在生产网站上使用 - 尽管开发人员称其拥有自己的joomlapolis.com网站。 “目标是在Joomla 1.7年底之前发布CB 1.8稳定版本,”开发人员说。

+0

谢谢。我访问了您提供的链接,并发现它的Joomla™(1.7,1.6,1.5和1.0)。它不包括Joomla 2.5.1 – Lloydworth 2012-02-09 08:39:54

+0

@Lloydworth,看到更新,CB 1.8有一个支持Joomla 2.5.x的Release Candidate版本。 – 2012-02-09 08:51:11

+0

但这是专业会员需要我们支付的吗? – Lloydworth 2012-02-09 08:53:49

2

在joomla 2.5中您可以为用户注册添加额外的12个字段。添加额外字段的步骤是转到插件管理器(扩展>插件管理器),然后查找名为用户配置文件的插件。这个插件默认带有Joomla,所以你不需要安装任何东西。但是,默认情况下,插件处于禁用状态,因此您必须首先启用插件。这一次点击就足以极大地改变的Joomla登记表,并添加12个有用字段:

7

的问题是如何获得这些个人资料数据。 This

JFactory::getUser()->get('address1',''); 

似乎不起作用。

但这项工作:

jimport('joomla.user.helper'); 
$user = & JFactory::getUser(); 
$profile = JUserHelper::getProfile($user->id); 
echo $profile->profile['address1']; 
+0

+1。但是请将'$ user =&JFactory :: getUser();'更改为'$ user = JFactory :: getUser();'以避免严格的警告。 – 2013-07-02 00:56:53