2017-08-16 2 views
0

Im Moment wird mein Menü aktiv, wenn ich auf einen Menüpunkt klicke, aber wenn die Seite gerade geladen wird, hat sie kein aktives Menü, also möchte ich zuerst li als aktiv machen.Wie man das erste Element des Menüs aktiv macht

Dieser Code aktives Menü macht von Strom-Menüpunkt Hinzufügen

add_filter('nav_menu_css_class' , 'special_nav_class' , 10 , 2); 

    function special_nav_class ($classes, $item) { 
     if (in_array('current-menu-item', $classes)){ 
      $classes[] = 'active'; 
     } 
     return $classes; 
    } 

function main_menu() { 
    add_theme_support('menus'); 
    register_nav_menus(array(
     'primary' => __('Primary Main Menu'), 
    )); 
    register_nav_menus(array(
     'secondary' => __('Primary Portfolio Navigation'), 
    )); 
} 

$args = array(
    'container' => '', 
    'menu_id' => false, 
    'items-wrap' => '%3$s', 
    'theme_location' => 'primary' 
); 

wp_nav_menu($args); 

Antwort

0

gibt es keine Notwendigkeit für diesen Filtercode, ist nur wie folgt:

1- ein Menü in functions.php registrieren

add_theme_support('menus'); 
if (function_exists('register_nav_menus')) { 
    register_nav_menus(
     array(
      'top-menu' => 'Top Menu' 
     ) 
    ); 
} 

2- Dann in Ihrem Code, wo Sie wollte nur diesen folgenden Code gesetzt werden:

<ul> 
    <?php wp_nav_menu(array('theme_location'=>'top-menu','container'=>'', 'items_wrap' => '%3$s')); ?> 
</ul> 

3 - Schließlich gehen Sie zu Admin-Panel, Aussehen-> Menüs, wählen Sie Top Menu und füllen Sie es mit Ihren Seiten, dies sollte alle active HTML-Klassen behandeln, es gibt keine Notwendigkeit, es manuell zu tun.

+0

i alreayd täte, b ut es funktioniert nicht, ich bitte meinen Code – Andrew

+0

aktualisiert überprüfen @ Andrew Sie Sie Menü direkt in functions.php registrieren sollten sich nicht in eine andere Funktion wie 'main_menu' – AliAwwad

+0

dies nichts geändert hat – Andrew

Verwandte Themen