Menüpont egyedi fromázása

csakiistvan képe

Adott egy menüm, ahol a harmadik menüpontot egyedileg kéne formáznom mint a többit. Kéne neki adni egy "id"-t.

<ul class="menu">
<li class="leaf first"><span class="menu-item-wrapper"><a title="" href="/">Főoldal</a></span></li>
<li class="leaf"><span class="menu-item-wrapper"><a href="/hirek">Hírek</a></span></li>
<li class="leaf"><span class="menu-item-wrapper"><a title="" href="/esemenynaptar">Eseményeink</a></span></li>
</ul>

Meg tudom ezt anélkül oldani hogy a forrásban kelljen kutakodnom?

Drupal verzió: 
Fórum: 
aboros képe

http://api.drupal.org/api/function/theme_menu_item_link/6

hirtelen ez jutott eszembe.

template.php

<?php
function THEMENAME_menu_item_link($link) {
	if (empty($link['localized_options'])) {
    $link['localized_options'] = array();
  }
	$options = $link['localized_options'];
	$options['attributes']['id'] = 'mlid-' . $link['mlid'];
 
  return l($link['title'], $link['href'], $options);
}
?>

ez minden menü linkbe, az "a tagbe" fog nyomni egy idt, 'mlid-X' ahol X az adott menüpont IDje. ezután már cssel célozhatod ezt.

0
0

-
clear: both;

csakiistvan képe

Köszi, kipróbálom

0
0

Drupal full-stack developer at Wunderman Thompson Budapest

buda képe

A Menu Attributes modullal is meg lehet oldani, bár így egy újabb modult kell ugyebár feltelepíteni :(

Sőt, ha jól látom akkor van még egy modul, amellyel ezt meg lehet oldani (de ezt nem használtam még): Menu Class

0
0
csakiistvan képe

Modullal szívesebben oldom meg mint kódban való matatással, köszönöm szépen, először ezeket próbálom ki

0
0

Drupal full-stack developer at Wunderman Thompson Budapest

csakiistvan képe

Na végre sikerült eljutnom eddig, mindkét verzió, a tiéd is, és a modul is ugyanoda tesz be id-t, de én nem csak az <a> atribútomot szeretném hivatkozni, hanem az azt tartalmazó <li>-t is, de ezekkel nem megy

0
0

Drupal full-stack developer at Wunderman Thompson Budapest

szantog képe

Akkor csússzunk eggyel beljebb a theme developer függvénylistáján:
http://api.drupal.org/api/function/theme_menu_item/6
Ez alapján valami ilyesmiből indulnél ki:

>
function SMINKNEVE_menu_item($link, $has_children, $menu = '', $in_active_trail = FALSE, $extra_class = NULL) {
  $class = ($menu ? 'expanded' : ($has_children ? 'collapsed' : 'leaf'));
  $extra_class .= ' ' .$link['mlid'] ;
  $class .= ' '. $extra_class;
 
  if ($in_active_trail) {
    $class .= ' active-trail';
  }
  return '<li class="'. $class .'">'. $link . $menu ."</li>\n";
}
</

Ezt most csak úgy összeszedtem, nem próbáltam.

0
0

----
Rájöttem, miért kérdezek olyan ritkán a drupal.hu-n. Amíg szedem össze az infokat a kérdéshez, mindig rájövök a megoldásra.

partysrac képe

Szervusztok!

Elolvastam ezeket a hozzászólásokat, de szerintem nekem valami más kellene.
Csináltam egy új blokkot, ahol csak egyetlen "Fórum" nevű menülinket raktam be. Ezt az egyetlen "Fórum" menülinket szeretném gombbá alakítani, mint ahogy pl. a keresés gomb is.

0
0
aboros képe

Elolvastam ezeket a hozzászólásokat, de szerintem nekem valami más kellene.

magad is írod, hogy valami más kell.
itt az a szokás, hogy egy ilyen fórumtéma egy jól behatárolt problémát boncol. ha megoldotta azt vége a témának.

0
0

-
clear: both;