Drupal Profile alter:hook_form_alter

时间:2009-12-15 18:08:08

标签: drupal-6

在查看了这里和其他地方的一些帖子之后,我似乎仍然无法手动向配置文件添加选择字段。 (我需要使用SQL查询填充选择列表,核心配置文件模块不支持。)

到目前为止,我正在尝试两种不同的方式:hook form alter($ form_id =='user-register'& hook user($ op =='register') - 但我甚至无法获得该字段出现在登记表中。

    function accountselect_user($op, &$edit, &$account, $category = NULL) {
    if ($op == 'register'){
    $fields['account_select'] = array(
    '#type' => 'fieldset',
    '#title' => t('Your Security Question')
    );
    $fields['account_select']['account_name'] = array(
    '#type' => 'select',
    '#default_value' => 'Select',
    '#description' => t('Select a verification question in case you forget your password'),
    '#options' => array(t('Select One'),
    t('Where you attended Elementry School'), t('Your Best Man'))
    );
return $fields;
    }

这是钩形式改变尝试

  function accountselect_form_alter(&$form, $form_state, $form_id){
              if($form_id == 'user-register')   {
               $form['account_select']['account_name'] = array(
               '#type' => 'select',
               '#title' => t('Account'),
               '#description' => t('Enter the account to which the contact belongs.'),
               '#options' => array(t('Account1'),t('account2'), t('account3')),
               '#default_value' => $edit ['Account']
               );
               }
               return $fields;
            }

1 个答案:

答案 0 :(得分:1)

抱歉,伙计们,这里的代码是正确的。首次启用模块时,我做了一些调试。我以为我已经成功修复了问题,但真正发生的是模块被禁用了。所以,无论那里有什么,它都没有效果......

不用担心,我为这个愚蠢的问题打了一拳......