Можно ли объявлять и управлять несколькими пользовательскими типами контента в одном модуле? Я создаю сайт, которому нужны четыре пользовательских типа контента, и я бы хотел управлять ими из одного модуля, а не создавать модуль для каждого типа контента. После некоторого тестирования я обнаружил, что это кажется невозможным. Поскольку, если hook_form и тип содержимого не имеют одно и то же имя модуля, drupal не вызывает hook_form.
Вот как бы я хотел это сделать -
function mycontent_node_info(){
return array(
'mycontent1' => array(
'name' => t('....'),
'module' => 'mycontent',
'description' => t('...),
'has_title' => TRUE,
'title_label' => t('Title'),
'has_body' => TRUE,
'body_label' => t('content body'),
),
'mycontent2' => array(
.......
),
'mycontent3' => array(
......
),
'mycontent4' => array(
......
),
);
}
function mycontent1_form(&$node){
$form['control1'] = array(
'#type' => 'select',
'#options' => array(
'0' => t('selection 1'),
'1' => t('selection 2'),
),
'#attributes' => array('id'=>'control1'),
);
$form['control2'] = array(
'#type' => 'select',
'#options' => array(
'0' => t('1'),
'1' => t('2'),
'2' => t('3'),
'3' => t('4'),
),
'#attributes' => array('id'=>'control2'),
);
return $form;
}
function mycontent2_form(&$node){
....
}
function mycontent3_form(&$node){
....
}
function mycontent4_form(&$node){
....
}
Я что-то не так делаю здесь или это невозможно, и нет другой альтернативы, кроме создания модуля для каждого типа контента. Я очень ценю вашу помощь.