2009-09-06 12 views
1

我对drupal中的整个用户配置文件很困惑,希望有人能帮助我,因为我没有在其他地方找到明确的答案。关于drupal中用户配置文件的困惑

对于初学者,您在哪里为用户设置了自定义字段,是在'admin/user/profile'下还是在'admin/content/node-type/profile'下(安装了content_profile模块)?我尝试了两个字段,但只添加了'default'用户/配置文件部分中的字段,并且设置为出现在实际显示在那里的注册页面页面上。两者都可以使用还是应该坚持只使用一种?

一旦用户登录,我去编辑配置文件,例如。 'user/1/edit /'除了缺省值之外,没有其他字段出现在结果表单中。我无法真正想象我必须在'themename_user_profile_form'钩子中手动添加它们吗?

将是冷静,如果有人可以帮助我在这里或点我到这部分内容的资源。

编辑: 事实证明,这是我一直在寻找提示:http://drupal.org/node/517094的剪断贴有不太对,我所做的就是添加挂钩到edit_profile_user一个新的模块:

function edit_profile_user ($op, &$edit, &$account, $category = null) 
{ 
    global $user; 
    switch ($op) 
    { 
     case 'form': 
      return profile_form_profile($edit, $user, 'Name of the Category'); 
    } 
} 
+0

感谢您的编辑;你能否详细了解整个过程,包括主题变化,或许是链接到页面? – dlamblin 2009-10-02 19:06:45

+0

我将上面的代码添加到我的模块之一,它不起作用。我认为除此之外还有更多。你能列出你所有的步骤吗? – EddyR 2009-10-24 05:18:39

回答

1

在文档中有关于extending user account information的可爱页面。

+0

谢谢,但我已经完成了。正如我所说的,我可以使用所描述的方法将字段添加到注册过程中,但不能在编辑页面上进行。作为奖励,profile_load_profile($ user);不会将自定义字段加载到$ user对象中。 – 2009-09-06 21:24:48

+0

好吧,我查看了一下,最后开始找到某个地方。事实证明,您必须添加自己的模块,该模块将挂钩到“edit_profile_user”中,然后您必须加载您添加的部分的profile_form_profile(),然后使用'themname_user_profile_form'编辑部分。真是太麻烦了.. – 2009-09-06 21:38:24

+0

@c_ham - 向用户添加额外的fld是很简单的。要为不同的用户角色分配不同的fld集合更加困难,并且能够使用不同的分类术语标记用户。这套文档没有解决它。 Jan - 你解决了这个问题吗?我想弄清楚如何为不同的用户角色设置不同的配置文件......对我来说,额外的麻烦是可以通过管理界面或用户自己以编程方式创建帐户... – Moonwalker 2012-10-16 18:09:29