2013-10-16 12 views
6

Aktuell Menü Ich mache: (functions.php)automatisch ein Menü auf Position ‚primäre Menü‘ auf Thema Aktivierung Einstellung

$menuname = 'Top Menu'; 
$menu_exists = wp_get_nav_menu_object($menuname); 

if(!$menu_exists){ 
$menu_id = wp_create_nav_menu($menuname); 

wp_update_nav_menu_item($menu_id, 0, array(
    'menu-item-title' => __('Programme'), 
    'menu-item-classes' => 'programme', 
    'menu-item-url' => home_url('/programme/'), 
    'menu-item-status' => 'publish')); 

wp_update_nav_menu_item($menu_id, 0, array(
    'menu-item-title' => __('Speakers'), 
    'menu-item-classes' => 'speakers', 
    'menu-item-url' => home_url('/speakers/'), 
    'menu-item-status' => 'publish')); 
} 

Wenn ich mein Thema zu aktivieren, was ich suche zu tun ist:

Wählen Sie die "Primary Menu" -Box automatisch, wenn ich dieses Thema zu starten, ich ein Menü erstellen und es zum primären Menü machen.

Wie macht man das?

Antwort

11

Sie können die theme_location des Menüs eingestellt programmatisch mit:

$locations = get_theme_mod('nav_menu_locations'); 
$locations['primary-menu'] = $term_id_of_menu; 
set_theme_mod('nav_menu_locations', $locations); 

diese functions.php zu Ihrer hinzufügen.

+0

diese lösung funktioniert gut – balamurugan

+0

Danke mann, funktioniert super. – tinyCoder

+0

Ah Mann nein, das ändert das Menü komplett aus der Datenbank. – tinyCoder