Второй уровень в меню
Я создал меню с пунктами, и один пункт имеет второй уровень. Поэтому я создал дочерние ссылки.
Проблема в том, что элемент, имеющий ссылки второго уровня, ссылается на какую-то страницу, и я хотел бы, чтобы он нигде не ссылался. Это будет только свернутая/развернутая ссылка, которая показывает или скрывает дочерние ссылки.
Я нашел единственную возможность установить ссылку как <front>
, но это не делает то, что я хочу. Возможно ли это в Drupal 7?
Хорошо, я нашел несколько модулей, которые может помочь, Блок меню и Приятные меню, но, похоже, у моей проблемы может быть более простое решение. Как бы вы решили эту проблему? С помощью какого-нибудь javascript?
Спасибо
5 answers
На самом деле есть 2 ссылки, которые могут помочь вам решить вашу проблему:
Пункты меню, которые не являются ссылками (Обратите внимание, что обсуждение начинается с drupal 5, поэтому вам придется перейти к комментариям, относящимся к drupal-7: нажмите ctrl+f и найдите Drupal 7)
Javascript для отключения ссылок родительского меню Drupal (Это решение основано на jQuery и CSS, поэтому вам не придется изменять template.php файл или установите любые дополнительные модули)
Я знаю два модуля, специально предназначенных для разрешения пунктов меню, которые не являются "правильными" ссылками. Есть Специальные пункты меню (у которых нет выпуска D7, но есть исправление ) и Первенец меню (они не идентичны по функциям, но оба делают то, что вы хотите, я верю).
Вас также может заинтересовать Меню DHTML, в котором есть версия beta1 для D7.
Одна вещь, которую вы могли бы сделать, - это создать ссылку первого уровня вручную и сделать ее идентичной "основной" или наиболее важной ссылке второго уровня.
Таким образом, у вас будет что-то вроде этого:
- О (о/кто-мы-есть/)
- Кто мы такие (о/кто-мы-есть/)
- Свяжитесь с нами (о компании/свяжитесь с нами/)
- и т.д.
Затем, используя красивые меню (или что-то еще), вы можете сделать так, чтобы меню второго уровня отображалось, когда кто-то наводит курсор на основное меню предметы. Некоторые пользователи могут нажать на эту основную ссылку, но это приведет их на нужную страницу второго уровня.
Вы можете использовать атрибуты меню для создания идентификатора элемента меню. С помощью jquery вы можете выбрать этот пункт меню и добавить событие onclick, чтобы показать и скрыть своих детей, чтобы переопределить значение по умолчанию при нажатии.
if($('#your-id').get(0)) {
$('#your-id').click(function(){
$('ul', this).toggle();
return false;
});
}
Https://drupal.org/project/special_menu_items делает именно то, что вы хотите...
Специальные пункты меню - это модуль Drupal, который предоставляет пункты меню-заполнители и разделители.
Заполнитель - это пункт меню, который не является ссылкой. Это полезно для динамических выпадающих меню, где мы хотим иметь родительский пункт меню, который не ссылается на страницу, а просто действует как родительский, группируя некоторые пункты меню под ней.
Разделительный пункт меню - это нечто например, "
-------
", который нигде не связывает, а просто служит для визуального структурирования меню и "разделения" пунктов меню.Контейнер элементов меню обеспечивает аналогичную функциональность.