Используйте изображение вместо ссылки меню в Drupal 7


У меня есть меню на моей странице, которое я создал. У меня есть ссылка под названием "Дом", и я хочу, чтобы изображение было только для этой ссылки. Я видел много модулей для Drupal 6. Есть ли в Drupal 7 какой-либо крючок или модуль для этого?

 1
Author: kiamlaluno, 2011-09-09

2 answers

Я отвечаю на свой собственный вопрос, поскольку я погуглил и нашел что-то, смешал это и вырезал свой собственный способ сделать это.

function mytheme_menu_link(array $variables) {
  global $base_path;    
  $element = $variables['element'];
  $output = l($element['#title'], $element['#href'], $element['#localized_options']);

  if($element['#title'] == 'Home') {
    $element['#localized_options']['html'] = TRUE;
    $get = '<img src="' . $base_path . drupal_get_path('theme', 'arras') . '/linkback.png" style="vertical-align: middle;" alt="' . $element['#title'] . '" title="' . $element['#title'] . '" />';
    $output1 = l($get,$element['#href'], $element['#localized_options']);
    return '<li' . drupal_attributes($element['#attributes']) . '>' .$output1    . "</li>\n";   
  } else {
    return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . "</li>\n";
  }
}
 3
Author: Hacker, 2011-09-28 16:36:26

Чтобы изменить ответ Хакера:

Если вы используете шрифт , вы могли бы использовать эти красивые значки. Тогда вам не нужно беспокоиться о загрузке изображений...

Код в вашем tempate.php может выглядеть так:

function THEME_menu_link(array $variables) {
  global $base_path;    
  $element = $variables['element'];
  $output = l($element['#title'], $element['#href'], $element['#localized_options']);

  if($element['#title'] == 'Home') {

$element['#localized_options']['html'] = TRUE;
$get = '<i class="fa fa-home fa-lg"></i>';
$output1 = l($get,$element['#href'], $element['#localized_options']);
return '<li' . drupal_attributes($element['#attributes']) . '>' .$output1    . "</li>\n";   
  } else {
return '<li' . drupal_attributes($element['#attributes']) . '>' . $output . "</li>\n";
  }
}

Смотрите Библиотеку значков fontawsome для получения дополнительных примеров имени класса (fa fa-home fa-lg)

 1
Author: Matthias, 2014-08-01 10:02:05