我创建了一个模块和一个钩子来覆盖注册模块的表单:
function custommodule_form_alter(&$form, $form_state, $form_id) {
// retrieve name & surname
global $user;
$user_fields = user_load($user->uid);
$name = $user_fields->field_name['und']['0']['value'];
$surname = $user_fields->field_surname['und']['0']['value'];
// var_dump($name); die();
// check the form_id
if($form_id=='registration_form'){
if( $form['who_is_registering']['#options']['registration_registrant_type_me'] =='Myself') {
$form['field_name']['und'][0]['value']['#default_value'] = $name;
$form['field_surname']['und'][0]['value']['#default_value'] = $surname;
} else {
$form['field_name']['und'][0]['value']['#default_value'] = '';
$form['field_surname']['und'][0]['value']['#default_value'] = '';
}
}
}
在原始模块中,我们可以根据选择值隐藏或显示字段。例如,如果选择位于“我自己”上,则用户邮件字段不可见。
如果选择位于“我自己”上,我想将这些字段设置为空,否则将其显示为空。
实际上,名称和姓氏是在字段中定义的。