我正在为网站使用两个注册表单 - 一个自动将用户注册为"客户",然后第二个表单将用于"提供商"。
默认表单的全局配置是为"客户"用户组注册的。 第二种形式;但是,自动将用户注册为"客户",我希望他们注册为提供者"组值 = 11"。谁能帮我解决这个问题?
我认为我需要做的就是在底部附近创建一个隐藏的输入字段,如下所示:
<input id="jform_group" type="hidden" name="jform[group]" value="11" />
不幸的是,这仍然将用户注册为客户(id 值为"10")。
我还尝试将全局配置删除为"已注册",但默认情况下不是注册为"客户",而是仅注册为"已注册"。我想弄清楚如何覆盖它,以便表单在其正确的用户组下注册。
任何帮助都非常感谢!! 谢谢!
您不能通过在表单中添加隐藏字段来做到这一点。因为Joomla核心不处理该值。它从配置中获取默认组。如果未设置,则默认为 2。
$system = $params->get('new_usertype', 2);
您必须构建一个可以处理该隐藏字段的用户插件,并根据隐藏字段值设置用户的组。该插件应使用 onContentPrepareData 事件运行并修改数据参数。
您还可以构建处理用户注册的自定义组件。不要破解JOOMLA核心。