Devo creare un menu principale che sia un sottoinsieme del menu normale. Il team di progettazione ritiene che sarebbe meglio per l'utente avere solo i collegamenti più importanti nel menu principale e non avere tutto. Alcuni collegamenti sono menu di livello superiore e alcuni sono sottomenu. Per questo speravo di poter aggiungere un campo al modulo di voce di collegamento del menu come un menu a discesa. Quando si crea un collegamento, l'utente può utilizzare questo menu a discesa per "promotionToMainMenuAsBigLink" o "promotionToMainMenuAsSmallLink" o lasciare nessuno per non mostrare l'elemento nel menu principale.
Sto cercando una soluzione simile a questa soluzione Drupal 7 ma per Drupal 8.
Speravo di poter aggiungere una colonna nella tabella menu_link_content_data accanto a "espanso". Speravo di non dover registrare queste informazioni in un'altra tabella come mostrato nella soluzione d7.
Sono stato in grado di aggiungere un campo al modulo di collegamento in un modulo personalizzato che ho creato, solo a scopo di test ho aggiunto solo un campo di testo per iniziare:
custom_menu.module:
function custom_menu_form_alter(&$form, FormStateInterface $form_state, $form_id) {
if($form_id == 'menu_link_content_menu_link_content_form') {
$form['promoteToMainMenu'] = array(
'#type' => 'textfield',
'#title' => t('Promote to main menu'),
'#description' => t('Promote link menu to main menu.'),
'#default_value' => '',
'#weight' => -9
);
}
}
Il campo è effettivamente mostrato nel modulo di collegamento ma non viene mai registrato.
Qualcuno può aiutarmi con questo?