Мне нужно построить главное меню, которое является подмножеством обычного меню. Команда разработчиков считает, что для пользователя было бы лучше иметь в главном меню только самые важные ссылки, а не все. Некоторые ссылки являются меню верхнего уровня, а некоторые - подменю. Для этого я надеялся добавить поле в форму ссылки на меню в виде раскрывающегося списка. При создании ссылки пользователь может использовать этот раскрывающийся список для «promoToMainMenuAsBigLink» или «promoToMainMenuAsSmallLink» или оставить ни один, чтобы не показывать элемент в главном меню.
Я ищу решение, похожее на это решение для Drupal 7, но для Drupal 8.
Я надеялся, что смогу добавить столбец в таблицу menu_link_content_data рядом с «расширенным». Я надеялся, что мне не придется записывать эту информацию в другую таблицу, как показано в решении d7.
Мне удалось добавить поле в форму ссылки в пользовательском модуле, который я построил, просто для целей тестирования я только добавил текстовое поле, чтобы начать с:
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
);
}
}
Поле действительно отображается в виде ссылки, но оно никогда не записывается.
Может кто-то помочь мне с этим?