0

我正在创建一个组件,注册用户将能够在其中使用我的组件的功能。

我的组件有一些表单和视图。我想只允许登录用户访问我的组件的链接。

如何在 Joomla 的用户注册表单中添加额外的自定义字段?我有一些额外的字段要捕获,例如地址和公司名称。

如何将身份验证与我的组件集成?

如何在不重新创建用户注册和身份验证功能的情况下完成我的组件。据我所知,我可以使用 joomla 用户注册并将其与我的组件集成。但我不知道该怎么做。

请帮忙谢谢

4

1 回答 1

1

有很多方法可以做到这一点。OFC 最好的方法总是在不进行核心黑客攻击的情况下进行集成。也就是说,我会提出两种方法。

有许多扩展用户注册字段的插件或组件。但是这些本身就是解决方案,因此对于您拥有自己的数据(地址,公司等)的组件没有用。

  1. 您只需使用 joomla 用户模型为您的组件创建一个注册前端视图。这样用户就可以通过您的组件注册并添加您喜欢的所有额外字段。您只需要注意将非标准字段添加到模型中的数据库表中。

  2. 如果您真的不想自己创建注册表单,您可以结合注册表单的内容覆盖创建一个用户插件。该插件将负责将额外的字段添加到您的数据库表中。正确的用户事件是:


function onAfterStoreUser($user, $isnew, $success, $msg) {
   ...
   if ($isnew)
   {
      myComponent::createExtraFields($user['id'], $args);    }
   else
   {
      myComponent::updateExtraFields($user['id'], $args); 
   }
   ...
}
于 2010-02-28T19:21:49.907 回答