Как добавить ACTIVE class?

Аватар пользователя dgastudio dgastudio 3 ноября 2009 в 19:17

Ситуация такова:

в меню вывожу помимо ссылки как таковой, еще одно поле с DESCRIPTION.

<?php foreach ($primary_links as $link): ?>
<div class="linkbarlink"><?php

                $href 

$link['href'] == "<front>" base_path() : base_path() . $link['href'];
                print 
"<h2><a href='" $href "'>" $link['title'] . "</a></h2>";
                print 
"<h3><a href='" $href "'>" $link['description'] . "</a></h3>";

                

?></div>

<?php endforeach; ?>

вопрос, как сюда (в класс дива) добавить класс который ставит друпал на активную на данный момент ссылку (active-trail, active)???

спасибо.

0 Thanks

Комментарии

Аватар пользователя Vladimir_VVV Vladimir_VVV 4 ноября 2009 в 6:47

нужно просто не черезжо, а специальными функциями ссылки делать, а актив хранится в ключе.


<?php foreach ($primary_links as $class=>$link): 

      

// это можно и удалить если не все так категорично
      
if (isset($link['href']) && ($link['href'] == $_GET['q'] || 
         (
$link['href'] == '<front>' && drupal_is_front_page()))) {
        
$class .= ' active';
      }

?>

<div class="linkbarlink<?php print $class;?>"><?php

                

// это ненада ибо через ЭЛ все идет 
                // $href = $link['href'] == "<front>" ? base_path() : base_path() . $link['href'];
                
print "<h2>".l($link['title'], $link['href'])."</h2>";
                print 
"<h3>".l($link['description'], $link['href'])."</h3>";

                

?></div>

<?php endforeach; ?>

стописятбаксов свас