2012-03-21 26 views

回答

0

这是这些问题有很多人问关于Joomla之一。扩展注册字段不是一件简单的事情。你可以破解核心代码,但这不是一个好主意。

里有Jomla推广目录的扩展,可以帮助你。去另一种方法是安装Seblod,一个CCK它允许你扩大各领域/中的Joomla形式(http://www.seblod.com)。

1

这并不太难 - 而且也没有需要破解的核心。 1.6+以上的非常酷的事情之一是扩展注册字段相对容易。

这里的一个来源: http://www.joellipman.com/articles/web-development/joomla-cms/28-tutorials/499-creating-a-profile-plugin-for-joomla-16.html

另一种方式(这是排序相同的)是进入插件/用户。在应该有一个文件夹,名为“个人资料”

  • 复制它,并调用它不同的东西......说yourprofile
  • 打开你的文本编辑器中的文件并更改引用,以便它引用“yourprofile”,而不是的“简介”。
  • 编辑PHP和XML文件,所以你只有在添加需要的字段,但您可以使用那里的东西来模拟你想要完成的(例如,需要一个选择栏?重命名理智,删除等)
  • 安装什么它(或者使用“发现”,或者将其放入tmp文件夹并从tmp安装,或者将其压缩并上传)并启用它。
  • 诅咒,有是一个错误,因为你错过了一些东西,回去换
  • 重复
  • 并完成了!

一个警告 - 似乎没有与这种方法一起工作是一种迫使一个特定的领域是必需的。在joomlacode中有一个补丁,但我无法得到它的工作,许多人似乎也有问题(虽然别人说它工作正常)。

0

如果你想在新的数据保存到用户表,很容易:

编辑administrator/components/com_users/models/forms/user.xml并添加新的字段,然后修改数据库,使用户表可以接受新的数据。而已。

定制注册更困难。作为一个起点,创建一个插件并查找“onUser”函​​数。

加载插件通过将(administrator)->Extensions->Manage->install从目录中,然后通过将(administrator)->Extensions->Plugins->(choose yours)->Enable

使用onUserAfterSave()保存信息激活它,并onContentPrepareData()加载它。例如:onContentPrepareData将设置为$data->yourNewField,并且onUserAfterSave将得到$user['yourNewField']并将其存储到数据库(或其他)。

2

得很干脆:

激活内置的 '用户 - 个人资料' 插件和配置(J1.6 +只)。 这会为注册表单和用户配置文件添加大量额外字段。 您可能需要修改插件的语言文件以将某些字段名称更改为套件。

1

您可以使用您需要的核心文件副本进行破解并将其保存到模板中。这不过是着名的“模板覆盖”。当你这样做的时候,当你升级Joomla时,你不会失去你的黑客。看看http://docs.joomla.org/How_to_override_the_output_from_the_Joomla!_corehttp://docs.joomla.org/Understanding_Output_Overrides。希望它是有用的。

+0

欢迎来到SO!答案应该包含一个链接的重要部分,因为链接可能会中断并且不再可以被访问。 – hichris123 2013-11-29 20:45:43