2013-10-16 192 views
6

目前我正在做這個菜單: (的functions.php)的主題激活自動設置菜單位置「主菜單」

$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')); 
} 

當我啓動我的主題,我在尋找什麼做是: Activating

自動選擇「主菜單」框,所以當我啓動這個主題時,我創建了一個菜單並將其設置爲主菜單。

這是怎麼回事?

回答

11

您可以通過設置菜單的theme_location編程:

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

添加到您的functions.php

+0

這個解決方案工作不錯 – balamurugan

+0

謝謝你,很好。 – tinyCoder

+0

啊,不,這完全改變了菜單的數據庫。 – tinyCoder