Drupal özel menüden metni Çıkarma

1 Cevap php

Ben drupal içinde özel bir menü stili çalışıyorum.

Ben başarıyla bir arka plan görüntüsünü görüntülemek için tarz ettik, ama sorun menü öğesi başlık hala görüntüler olmasıdır. Yani her yerinde blazoned ile güzel bir görüntü almak.

Ben özel menü biçimlendirmek ve köprü gelen metin kısmını kaldırmak için kullanabileceğiniz bir şablon işlevi var mı?

Benim birincil bağlantıları benzer bir şey yaptık (aşağıya bakınız) ama bazı yardım özel menüler üzerinde bunu yapmak için nasıl sergiyi ile yapabilirdi.

function primary_links_add_icons() {
  $links = menu_primary_links();
  $level_tmp = explode('-', key($links));
  $level = $level_tmp[0];
  $output = "<ul class=\"links-$level\">\n";   
  if ($links) {
    foreach ($links as $link) {
        $link = l($link['title'], $link['href'], $link['attributes'], $link['query'], $link['fragment']);
        $cssid = str_replace(' ', '_', strip_tags($link));
    	$link = preg_replace('#(<a.*?>).*?(</a>)#', '$1$2', $link);
    	$output .= '<li id="'.$cssid.'">' . $link .'</li>';
    };
    $output .= '</ul>';
  }
  return $output;
}

Ve sonra bu page.tpl.php içinde adı

print primary_links_add_icons();

Herhangi bir yardım için teşekkür ederiz!

1 Cevap

theme_menu_tree template.php kendisini bu sorunu çözmek için bir yol olacaktır. Lütfen fonksiyonunun et Yukarıdaki işlevi aynı olacaktır. Belgeler http://api.drupal.org/api/function/theme%5Fmenu%5Ftree yer almaktadır

Ama ne yaptığınızı için CSS kullanarak öneriyoruz. Metin (php ile) tamamen kaldırılırsa, o zaman düzgün görüntüleri ve CSS görüntüler ve gezinti mümkün kılmak için kullanıcının tarayıcısına bağlı olacak.

Siz görüntü ve metin dahil olmak üzere, ancak CSS düzgün yüklü değilse daha incelikle alçaltır, böylece metin kısmını display: none yapma düşünebilirsiniz.