繁体   English   中英

自定义Drupal用户帐户表单

[英]Customizing Drupal user account form

在我的Drupal网站中,我将拥有两个类别的用户,例如A类和B类。当某人想要在该网站上创建帐户时,我想问他们他们属于哪个类别,并基于该类别显示字段在用户帐户表单上。 显示的字段取决于所选的类别。 Drupal用户帐户表单默认具有两个字段,即用户名和电子邮件,我可以使用Profile模块添加更多字段,但是如何根据用户选择在用户帐户表单上显示不同的字段集?

任何帮助将不胜感激。 谢谢

检查配置文件设置模块。 有关此模块的更多详细信息(来自其项目页面):

现在,Drupal 6的配置文件设置可与Pageroute模块(6.x-1.x-dev)一起使用,以通过pageroute API提供其他页面类型,因此借助的完全自定义配置文件设置工作流程现在比以往任何时候都更加灵活。 pageroute模块。

完整的安装说明在模块文件夹中的INSTALL.txt文件中提供,因此在安装此模块之前请先阅读它们,或考虑提交错误报告。

如果要从Drupal 5版本升级,请阅读module文件夹中的UPGRADE.txt文件。

我过去使用hook_form_alter并检查$ _GET ['type']来完成此操作。 如果$ _GET ['type']为空,则执行以下操作:

$form = array(
  '#value' => '<div><a href="/user/register?type=A">Register as A</a> or <a href="/user/register?type=B">Register as B</a></div>',
);

如果$ _GET ['type']为'A'或'B',则删除了与该类型无关的表单元素。 然后,在#submit处理程序中,我将用户置于适当的角色。

通过使用hook_form_alter,您可以使用unset更改表单字段,并在表单内部添加元素。 我假设选择后在同一用户注册页面上有一个类别选择,则可以使用AHAH Helper模块根据类别选择更改表单字段。

希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM