Поискал на этом сайте, поискал на Drupal.org модули, но так и не понял - неужели не существует способа сделать выпадающее меню для Primary Links по-человечески? Меня совершенно не устраивает, что например Nice Menu, который все советуют позволяет только шлёпать блоки - мне не нужен блок! Мне нужно, чтобы после установки модуля дочерние пункты Primary Links выводились выпадающим меню при наведении курсора мышки на родительский пункт меню. Именно так! Я не хочу размещать Primary Links в блоке, потому что этот блок будет показан не так и не в том месте, которое мне нужно. Мне нужно чтобы всё работало именно на том месте, куда выводит Primary Links тема. Так возможно это или нет на готовых решениях или надо своё ваять?
Комментарии
туфту гоните, уважаемый.
написать CSS и кусок page.tpl чтбы блок показывать так и в том месте как вам нужно уже стало проблемой?
http://www.extrajob.by/ как пример вставки nice menus
Вставляйте в тему, куда хотите
<?php print theme('nice_menu_primary_links'); ?>
> написать CSS и кусок page.tpl чтбы блок показывать так и в том месте как вам нужно уже стало проблемой?
Написать можно что угодно, спору нет. Даже свой модуль, который будет делать то, что нужно. Я задал вопрос в надежде на то, что уже есть нормальное готовое решение.
> Вставляйте в тему, куда хотите
Вадыч, проблема в том, что такое не будет работать после сноса модуля! Получается, что у меня сайт будет завязан на ОБЯЗАТЕЛЬНОЕ наличие данного модуля, что разумеется мне не нужно!
Если Вы хотите чтобы ваше меню стало выпадающем без модуля, пишите Javascript, подключайте его и проблема решена.
Да я готов написать, не вопрос. Целью создания данного вопроса было узнать, есть ли уже ГОТОВЫЕ решения с нужной мне функциональностью? Если их нет - придётся писать, но вдруг кто знает такие решения?
и это проблема?
ну тада пишите свою темизацию главного меню + JS и в тему.
по сути будет та же работа что и подрубание nice menus
Спасибо за столь "полезный" совет. По-моему лучше написать модуль, который будет показывать подменю с JavaScript именно в том месте, где выводится само меню в ЛЮБОЙ теме. Тогда не надо править никаких тем и при отсутствии модуля будет работать самым обычным образом.
Есть, есть - и много.
Вариант 1. Вы же на шестерке? Меняете тему на ту, которая уже с предустановленной выпадающей меню. Обычно используется сускерфиш меню.
Вариант 2. Используя тему из №1 пишите сами свой цсс.
Вариант 3. Я так сделала, правда на 5ке. Передрала кусок темы не меняя его, из №1 в свою, получилось нормально - мне нравится - www.uchi.kz, синее меню вверху.
Короче, пишите свой сускерфиш, если не умеете, платите дизайнерам (я так собираюсь сделать после портирования) и все!
Это был бы хороший выход для РАЗОВОЙ надобности.
Однако, если всё-таки задаться целью получить инструмент, которым потом можно пользоваться везде и всюду, лучше всё-таки писать модуль. Потому как я понимаю, что готовых решений таки нет.
Ну так сделайте проверку на наличие модуля и если есть модуль - выводите найсменю. Если модуля нет - primary_links.
"Зеленое" решение в Друпале - как раз модули, а не "готовые решения" для вставки в шаблон.
Походу ТС все го лишь нужно вывести все элементы главного меню в в виде дерева и простилизировать его. В 6 друпале это можна сделать через тему:
function phptemplate_preprocess_page(&$vars) {
...
$vars['primary_links_tree'] = menu_tree(variable_get('menu_primary_links_source', 'primary-links'));
...
}
в page.tpl.php
<div id="primary-menu">
<?php print $primary_links_tree; ?>
</div><!-- /primary_menu -->
veligursky, случайно не знаете, как в эту функцию добавить кастомный id?
если в обычную функцию принт праймари_линкс, то это легко. если выводить дерево, то не знаю как... (просто у меня есть готовый цсс, а там стиль идет по Айди, а не по классу
а переделывать лень 
Geldora - нужно смотреть код самой функции, скорее всего что через хук только