Alterando o último elemento do menu

Drupal
Enviado por Pedro Faria em Qua, 20/09/2006 - 14:13.Drupal

Hoje no canal #drupal-support da rede freenode de irc perguntaram como poderia ser feito para alterar o primeiro ou último elemento da árvore de menu. Como eu já havia feito isso para um site mostrei ao cara a solução.

Não é tão obvia, precisei ler muuuuuito código... então, se você é drupaleiro, vai ai a dica.

Crie a função seutema_menu_tree no template.php, para sobrepor a theme_menu_tree, da seguinte forma:

  1. <?php
  2.  
  3. function meutema_menu_tree ($pid = 1) {
  4.   if (!($tree = menu_tree($pid))) return;
  5.  
  6.   $tree = "\n<ul>\n". $tree ."</ul>\n";
  7.  
  8.   return preg_replace('/^(.*)(<li class=".*?)(".*?<\/li>.*?<\/ul>)/ms','$1$2 last$3', $tree);
  9. }
  10.  
  11. ?>

Fazendo isso, você coloca a classe last no último item da lista e dae é só alterar via CSS.

Legal né?

t+