J'ai besoin de construire un menu principal qui est un sous-ensemble du menu régulier. L'équipe de conception pense qu'il serait préférable pour l'utilisateur de n'avoir que les liens les plus importants dans le menu principal et de ne pas tout avoir. Certains liens sont des menus de niveau supérieur et certains sont des sous-menus. Pour cela, j'espérais pouvoir ajouter un champ au formulaire d'élément de lien de menu sous forme de liste déroulante. Lors de la création d'un lien, l'utilisateur peut utiliser cette liste déroulante pour "promouvoirToMainMenuAsBigLink" ou "promouvoirToMainMenuAsSmallLink" ou n'en laisser aucun pour ne pas afficher l'élément dans le menu principal.
Je cherche une solution similaire à cette solution Drupal 7 mais pour Drupal 8.
J'espérais pouvoir ajouter une colonne dans la table menu_link_content_data à côté de 'expand'. J'espérais ne pas avoir à enregistrer ces informations dans un autre tableau comme indiqué dans la solution d7.
J'ai pu ajouter un champ au formulaire de lien dans un module personnalisé que je construis, juste à des fins de test, j'ai seulement ajouté un champ de texte pour commencer:
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
);
}
}
Le champ est en effet affiché dans le formulaire de lien mais il n'est jamais enregistré.
Quelqu'un peut il m'aider avec ça?