0

Drupal 7,我想将用户配置文件表单加载到模块页面中。我还有一个用户可以配置的自定义字段,我们称这个字段为“blah”。它是作为下拉字段实现的。

当我使用以下代码加载表单时,除了不填充其用户存储数据的 blah 字段之外,一切都很好。

form_load_include($form_state, 'inc', 'user', 'user.pages');
global $user;
$output .= drupal_render((drupal_get_form('user_profile_form', $user)));

有谁知道我如何将 blah 变量/值/用户数据放入这个呈现的表单中?如果我转到http://example.com/user/2/edit的标准用户配置文件编辑页面,它就会被填充。

4

3 回答 3

2

您应该可以使用user_load api 来实现这一点。

global $user;
$user_fields = user_load($user->uid);
print_r($user_fields);
于 2013-07-12T16:09:04.640 回答
1

解决了!我认为在 Stack Overflow 上发帖的行为有时会让你开始解决问题。就这么简单$user->field_blah['und'][0]['value'] = 12345;

于 2013-07-12T16:42:53.187 回答
1

可能的解决方案:- 1)如果它的自定义字段使其属于用户实体包,并且在将其附加到用户包时用户注册表单为真。2)U 可以使用 field_attach_form, 3)form alter

于 2013-07-12T17:26:10.670 回答