問題描述

我已經閱讀了幾個教程,介紹如何將 3.0 版本中新增的自定義選單的功能新增到我的主題,但它們似乎有所不同,我不知道它們是否包含多餘的程式碼。此外,我讀到,在 RC 和公開發行版之間,menu-compatible 註冊您的主題程式碼已更改。

在我的主題中新增自定義選單支援的最簡單方法是什麼?

最佳解決方案

最簡單的方法是使用 register_nav_menus 功能。這應該掛在'after_setup_theme'中:

function my_cool_menu_function(){
  register_nav_menus( array(
    'primary' => 'Primary Navigation'
  ));
}

add_action( 'after_setup_theme', 'my_cool_menu_function' );

然後,在您的主題中,只需呼叫該選單的位置:

wp_nav_menu( array( 'theme_location' => 'primary' ) );

次佳解決方案

將其新增到您的主題的 functions.php 。如果沒有,請建立它:

<?php
add_theme_support('menus');
function register_my_menus() {
    $args = array(
        'menu-1' => __( 'Main Menu' )
    );
    register_nav_menus( $args );
}
add_action( 'init', 'register_my_menus' );
?>

這可以去任何地方,我在 header.php(參見 wp_nav_menu() 檔案):

<?php
$args = array(
    'menu' => 'Main Menu',
    'sort_column' => 'menu_order',
    'container' => 'div',
);
wp_nav_menu( $args ); ?>

參考文獻

注:本文內容整合自 Google/Baidu/Bing 輔助翻譯的英文資料結果。如果您對結果不滿意,可以加入我們改善翻譯效果:薇曉朵技術論壇。