Даже после прочтения полей hook_form_alter () и CCK о подводных камнях, на которые нужно обратить внимание при использовании hook_form alter в CCK, я все еще был в замешательстве, потому что по сути я делаю именно то, что они предлагают. *
Я наконец решил попробовать другой подход, и у меня сработали следующие изменения:
<?php
//Changed from hook_form_FORM_ID_alter to hook_form_alter
/**
* Implementation of hook_form_FORM_ID_alter().
*/
function leghist_form_alter(&$form, &$form_state, $form_id) {
if ($form_id == 'paleghist_node_form') {
//Add function to manipulate cck node form
leghist_cck_alter($form);
}
}
/**
* Adds Element to $form
*/
function leghist_cck_alter (&$form) {
//Add display option to titles
foreach (element_children($form['field_lg_pop_names']) as $key) {
$form['field_lg_pop_names'][$key]['display'] = array(
'#type' => 'checkbox',
'#title' => t('Display'),
'#process' => array('leghist_display_process')
);
}
}
/**
* Implementation of hook element_process
*/
function leghist_display_process ($element) {
return $element;
}