Üdv,
Kellene egy grafikus menüt készítenem, amelynél minden menüpontnak más-más háttérképe lenne.
A Drupal alap menüfelépítése erre nem jó, mert nem tesz hozzá egyedi id-t:
<ul class="menu"> <li class="leaf"><a href="/" title="Kezdőlap">Kezdőlap</a></li> <li class="collapsed"><a href="/menu-1">Menü 1</a></li> <li class="leaf"><a href="/menu-2">Menü 2</a></li> <li class="collapsed"><a href="/menu-3">Menü 3</a></li> </ul>
Találtam egy leírást, aminek a segítségével "id" taggal lehet ellátni a <li>
tagot:
A CSS ID for Every Menu Item
TEMPLATE.PHP: Override theme_menu_item() (includes/menu.inc)
<?php function phptemplate_menu_item($mid, $children = '', $leaf = TRUE) { return _phptemplate_callback('menu_item', array( 'leaf' => $leaf, 'mid' => $mid, 'children' => $children )); } ?>
menu_item.tpl.php
<?php $link = menu_item_link($mid); // replace spaces with "_", and strip HTML $css_id = str_replace(' ', '_', strip_tags($link)); // render the menu link with unique CSS id. $output = '<li id="'.$css_id.'" class="'. ($leaf ? 'leaf' : ($children ? 'expanded' : 'collapsed')) .'">'. $link . $children ."</li>\n"; print $output; ?>
Teljesen jó is lenne, ha nem használnánk ékezetes neveket. De a jobb használhatóság kedvéért, szerintem inkább (ha van) akkor az url_alias-t kellene megadni az id értékének. Hogyan lehetséges ez?
Ja, az útvonal álnévben lehet "/" (hirek/tudomany), amit gondolom le kell majd cserélnem mondjuk egy kötőjelre (hirek-tudomany).
Köszi, Pali
Fórum:
Ha blokkba teszed, annak
Ha blokkba teszed, annak lesz egyedi id-je.
Aries
http://aries.mindworks.hu
Blokkban van. Nincs id.
Illetve igen, a blokknak van egyedi id-je. De nekem minden menüpontnak más hátteret kellene, hogy adjak, és ezt csak úgy tudom megcsinálni, ha minden li tagnak egyedi id-t generálok.
Vagyis nekem ilyen kellene:
Mert csak így lehet hivatkozni az adott li tagra:
Vagy te tudsz olyan dolgot, amivel enélkül megoldható?
Köszi, Pali
--
Palócz Paal Pál, a drupal.hu admin csoportjának tagja
Ajánlott olvasmány: Eric Steven Raymond - Hogyan kérdezzünk okosan
ez lehet hogy jó lesz
template.php fileba
Természetesen ez a megoldás csak akkor jó ha phptempate-et használsz.
ne blokkba
Ne blokkba tedd, hanem a page.tpl.php-ben írasd ki. A Garland sminket nézd meg, minden li elemen egyedi stílusosztály van.
Jó lenne, csak
Az a probléma, hogy így csak az első menüsort írja ki, az alatta lévő (gyerek) menüpontokat nem...
De nekem az (is) kellene, hogy az almenüpontok is megjelenjenek:
Mégis, hogy lehetne?
Köszi, Pali
--
Palócz Paal Pál, a drupal.hu admin csoportjának tagja
Ajánlott olvasmány: Eric Steven Raymond - Hogyan kérdezzünk okosan
Ha még esedékes...
Igaz, nem id-val, hanem class-sal csináltam, és 5-ös drupalhoz: http://drupal.hu/tippek/egyedimenupontok