Frage

Ich wollte ein Menü oben auf der Seite erstellen, da das spezifische Layout in der CSS ich dachte, dies sei eine Lösung, um dies mit dem folgenden Code in meiner Vorlage zu tun (Index.php).

    $item_active = $menu->getActive();
    for($i = 0; $i >  count($menu_items); $i++){
        $item = $menu_items[$i];            
        if($item_active->id == $item->id)
            echo '<a href="'.$this->baseurl.'/'.$item->route.'"><div id="button_pressed"><div id="button_text">'.$item->title.'</div></div></a>';
        else
            echo '<a href="'.$this->baseurl.'/'.$item->route.'"><div id="button"><div id="button_text">'.$item->title.'</div></div></a>';

    }

Aber gibt es keinen besseren Weg, ich denke, ich vermisse hier einen Link

War es hilfreich?

Lösung

Dies sollte nicht in Ihrer Vorlage sein. Das Menü sollte sich in einem Modul befinden. Die meisten Menümodule verfügen über ein aktives Hervorhebung integriert. Auch der Core Joomla mod_Menu unterstützt das aktive Hervorheben.

Andere Tipps

Was Sie tun müssen, ist, CSS so zu überschreiben, dass A: Link, A: Hover, A: Besucht weiße Farbe verwenden, aber Sie benötigen stattdessen graue Farbe für aktive Seite. Sie machen einfach etwas gleich und setzen Sie in #Active_Menu als Beispiel für wichtig! Wichtig:

#main a:link, #main a:hover, #main a:visited {colour:#FFF;}

#active_menu {#CCC !important;}

Ich denke, ein guter Weg und so, wie ich immer benutze, ist mit einem ternären Operator in der Klasse der Links.

-- inside de <a> tag bt without the spaces in the < a> -- 

< a class="button <?= $item_active->id == $item->id ? : 'button_pressed' : '' ?>" >Hello< /a>

Dann fügen Sie die CSS -Regeln zu .button_pression hinzu

Es ist ein sehr sauberer Weg, es zu tun. Fragen Sie einfach, ob Sie weitere Hilfe wünschen: D.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top