Копирую для себя, что не потерять Но думаю, многих заинтересует
Рецепт отсюда - http://www.theraggedyedge.co.uk/content/simple-and-easy-drop-down-sucker...
Simple and easy drop down (Suckerfish) menus for Drupal 6
Я пытался найти простое и красивое решение как добавить suckerfish меню (выпадающие меню). Однако, большинство решений предполагали либо магию incantations (? - не знаю этого слова) или плагины jquery. Немного чересчур.
И когда я уже был готов потерять надежду, я увидел тему Multiflex-3 для drupal и её решение по использованию меню suckerfish. Наконец-то что-то, что было легко и просто использовать! Никакого js, что по-моему, очень хорошо.
Код в файле template.php file (Из темы multiflex-3):
* Return a cascade primary links.
* Clone implementation from user_block().
*
* return
* a themed cascade primary links.
*/
function phptemplate_primary() {
$output = '<div id="primary-links-region">';
$output .= menu_tree(variable_get('menu_primary_links_source', 'primary-links'));
$output .= '</div>';
return $output;
}
Далее добавить:
В файл page.tpl.php file где я хотел видеть выпадающие меню. Красиво и просто. wahay!
(Я переименовал функцию phptemplate_primary() в arthemia_primary(). Потому что я это умею.)
Спасибо multiflex-3 за это простое решение.
Комментарии
И если будет возможность сделайте скрин как выглядит, многим жизнь облегчите.
Категорически некорректно! вывод меню это всего лишь [ru-api=menu_tree]menu_tree()[/ru-api] незачем городить phptemplate... да и слизано с блога в котором речь идет о конкретной теме оформления. ведь в этом коде нет css, который делает собственно меню! Лучше взять тему acquia marina там все это реализовано и описано.
Лучше привести ссылку на http://acquia.com/blog/dropdown-drupal-menus-accessibility-friendly-imag...
Последняя намного правильнее и возможностей больше
Хм, Андипост, а я вот вашу ссылку не поняла... Там речь идет а) о модуле Найс Меню б) о использовании картинок, а не о сускерфише.
В принципе, я сразу написала, откуда "слизано" Теперь объясняю кому и зачем это надо
Во первых, в сети полно готовых рецептов выпадающего меню на цсс. Все что надо - перекопировать стили себе в стайл.цсс, обеспечить полное дерево праймари меню и соответственно, чтобы совпадали классы и айди.
Дерево праймари меню делается так: (код списан с Аквии Марина)
<?php print menu_tree($menu_name = 'primary-links'); ?>
Если хотите добавить какой-то свой класс или АйДи к праймари меню, нужно переписать эту функцию:
По аналогии, можно добавить айди.
Либо первый код, либо второй (он по умолчанию в большинстве тем) нужно добавить в page.tpl.php, там где будете выводить праймари.
По большому счету (особенно, если вы разбираетесь в цсс этих двух сниппетов хватит за глаза А я вот не разбираюсь, и умею только копировать с исходников И у меня была проблема:
Я переделывала темы оформления с Ворпресса (как раз таки Артемию, и пока сама переделала, парень который ведет тот блог её уже сам портировл
Там есть выпадающие меню, но у ворпресса другой код:
<li class="ghhg">
<ul id="baba">
и так далее
Т.е. а) нужно вывести все дерево меню, б) нужно приписать к меню уникальный айди. Как скрестить две выше описанные функции я не знаю... Если выводить праймари меню деревом, то класс останется дефолтным, а АйДи не будет вообще... Лично я проблему не разрешила.
А этот парень предлагает добавить в темплейт функцию, которая мало того что выводит дерево, но и добавляет лишний div с каким-нибудь Айди, что и требовалось получить
(П.С. Я правда только сейчас приступлю к тестированию, вчера как увидела, сразу сюда скопировала чтобы не потерять, даже не офрмила нормально и часть кода потерялась
ну теперь совсем другое дело... nice menus как раз и позволяют делать много полезного с меню.
полезно