Je souhaite créer une taxonomie hiérarchique à l'aide de mon module personnalisé. Je reçois toute la liste de vocabulaire en utilisant taxonomy_get_vocabularies().Comment créer une taxonomie hiérarchique par programmation drupal 7
Mon problème est que lorsque je sélectionne un vocabulaire ou un parent parent doit être la liste dans une autre liste de sélection/liste déroulante.
Mon code: -
enter code here
<?php
function student_addform($form, &$form_state) {
$vocabulary = taxonomy_get_vocabularies();
$checklist_vocab_array = array();
foreach ($vocabulary as $item) {
$vocab_vid = $item->vid;
$vocab_name = $item->name;
$checklist_vocab_array[$vocab_vid] = $vocab_name;
}
$form['vocabulary_list'] = array(
'#type' => 'select',
'#title' => t('List of current Classes.'),
'#position' => 'left' ,
'#options' => $checklist_vocab_array ,
'#required' => TRUE,
'#description' => t('List of classes displayed as dropdown'),
'#ajax' => array(
'callback' => '_student_records_callback_fields',
'wrapper' => 'check-box-replace',
'effect' => 'fade',
'event' => 'change' ,
),
);
$form['child-list'] = array(
'#type' => 'select',
'#title' => t('Select fields of'),
'options' => $term_list,
'#prefix' => '<div id="check-box-replace">',
'#suffix' => '</div>',
);
return $form;
}
function _student_records_callback_fields($form, $form_state) {
$term_list = array();
$vocabulary_id = $form['vocabulary_list']['#value'];
$terms = taxonomy_get_tree($vocabulary_id); // Use the correct vocabulary id.
$count = count($terms);
for ($term = 0 ; $term < $count ; $term++) {
$term_list[$terms[$term]->vid] = $terms[$term]->name;
}
return $term_list;
}
?>
Merci,