Темизация меню

Главные вкладки

Аватар пользователя Konstantin_Vedernikov Konstantin_Vede... 7 июля 2011 в 6:28

Здравствуйте!
Изменил код меню:

<?phpfunction limoneroygranado_menu_link(array $variables) {
  $element = $variables['element'];
  $sub_menu = '';

  if ($element['#below']) {
    $sub_menu = drupal_render($element['#below']);
  }

$menu_it = explode(" ", $element['#title']);
$menu_it_s = count($menu_it);

if (count($menu_it) > 1) {
    $my_menu_link = '
        <a class="nav-link" href="'.$element['#href'].'">
            <p><span>.</span>'.$menu_it[0].'</p>
            <p class="t"><span>.</span>'.$menu_it[1].'</p>
        </a>
    ';
} else {
    $my_menu_link = '
        <a class="nav-link" href="'.$element['#href'].'">
            <p><span>.</span>'.$menu_it[0].'</p>
        </a>
    ';
}
   
$my_menu_item = 
'
<li  class="nav-site">
    <div id="oveline-container">
        <div class="overline2">
            <div class="overline1"></div>
            <div class="overline3"></div>
        </div>
    </div>
    '.$my_menu_link.'
</li>
';  
  return $my_menu_item;
}?>

Но эти изменения отображаются для всех меню. Как мне к одному меню привязать его?

И еще, при создании ноды пишу альтер путь (алиас). Но в менюшке все ровно отображается node/N

Спасибо огромное всем!

Комментарии

Аватар пользователя parroot parroot 10 июля 2011 в 22:10

Таже проблема с алиасом, еще не решил Smile а привязать можно.
Сделай так

<?phpfunction limoneroygranado_menu_link(array $variables) {
 print_r($variables);
}?>

Выведит что то типа menu_link__menu_mainmenu, menu_link__menu_usermenu
Определяй так:

<?phpif($element['#theme'] == 'menu_link__menu_mainmenu'){//для главного меню
    
        $my_menu_link = '<a href="' . $element['#href'] . '">' . $element['#title'] . '</a>';
           
        $my_menu_item = '<span><li>'.$my_menu_link.'</li><img src="sites/all/themes/blank/images/btnseparator.png" width="2px" height="43px" class="mtimg" /></span>';
    
        
    } else {// для всех остальных меню

        $my_menu_link = '<a href="' . $element['#href'] . '">' . $element['#title'] . '</a>';
           
        $my_menu_item = '<li>'.$my_menu_link.'</li>';    
    
    }?>

Аватар пользователя parroot parroot 10 июля 2011 в 22:10

Проблему с алиасами можно решить так (не очень элегантно, но работает!)
Если ссылка относительная добавлять перед ней /?q=
 $my_menu_link = '<a href="/?q=' . $element['#href'] . '">' . $element['#title'] . '</a>';
Если нет то
$my_menu_link = '<a href="' . $element['#href'] . '">' . $element['#title'] . '</a>';
Если алиас так же
$my_menu_link = '<a href="' . $element['#href'] . '">' . $element['#title'] . '</a>';
Тупо и банально, но все же хоть какой то выход из положения! Жду лучших предложений!!!