Сайт веб-разработчика Николая Семенцова

Партнер компании 1с-битрикс

Вывод меню в определенной стилистике

Недавно делал сайт где необходимо было обрамить название меню тегом <span> еще обязательныем условием уникальный class для каждого тега li

Во первых я вывел главное меню в определенном месте с помощью кода

if (isset($primary_links)) :
   print theme('links', $primary_links, array('class' => 'links primary-links'));
 endif;

Далее для стилизации пункта меню необходимо в файл template.php скопировать код из файла includes/theme.inc


function НАЗВАНИЕ-ВАШЕЙ-ТЕМЫ_links($links, $attributes = array('class' => 'links')) {
    global $language;
  $output = '';
  if (count($links) > 0) {
    $output .= ' $class)) .'>';
 
      if (isset($link['href'])) {
// код ниже обрамляет тегом span название ссылки
        $link['title'] = '' . check_plain($link['title']) . '';
        $link['html'] = TRUE;
        // Pass in $link as $options, they share the same keys.
        $output .= l($link['title'], $link['href'], $link);
      }
      else if (!empty($link['title'])) {
        // Some links are actually not links, but we wrap these in  for adding title and class attributes
        if (empty($link['html'])) {
          $link['title'] = check_plain($link['title']);
        }
        $span_attributes = '';
        if (isset($link['attributes'])) {
          $span_attributes = drupal_attributes($link['attributes']);
        }
        $output .= '';
      }
 
      $i++;
      $output .= "\n";
    }
    $output .= '';
  }
  return $output;
}

С помощью этого кода можно стилизовать меню практически под любые нужды


Опубликовано: 5 Мая 2011




Помогла заметка? Жмите кнопки ниже


ВКонтакт Facebook Google Plus Одноклассники Twitter Яндекс Livejournal Liveinternet Mail.Ru





comments powered by Disqus

Партнер 1c-bitrix