суббота, 12 апреля 2014 г.

Перенос строк в пунктах меню Drupal 7

Для релизации переноса строки нужно вставить  следующее в template.php и можно будет использовать тег br в пункте меню. (И незабудте очистить кэш)
Проверено на Drupal 7 работает, для шестой версии скорее всего не будет работать.

/**
* Override theme_menu_link() to add line breaks in menu items
* that have a <br> or <br/> or <br />  placed in them.
*/
function YOURTHEME_menu_link(array $variables) {
  $element = $variables['element'];
  $sub_menu = '';
 
  if ($element['#below']) {
    $sub_menu = drupal_render($element['#below']);
  }
  $output = l($element['#title'], $element['#href']
            $element['#localized_options']);
 
  // Replace text line breaks with html line breaks. 
  $output = str_replace("&lt;br&gt;", "<br/>", $output); 
  $output = str_replace("&lt;br/&gt;", "<br/>", $output);
  $output = str_replace("&lt;br /&gt;", "<br/>", $output);
 
  return '<li' . drupal_attributes($element['#attributes']) . '>'
         $output . $sub_menu . "</li>\n";
}

IT-записки

comments powered by Disqus