📜  添加多个新的导航菜单位置 - PHP (1)

📅  最后修改于: 2023-12-03 14:56:07.561000             🧑  作者: Mango

添加多个新的导航菜单位置 - PHP

在开发 PHP 主题时,有时需要为网站添加新的导航菜单位置。以下是一个示例代码,演示如何在主题中添加多个新的导航菜单位置。

/**
 * 在主题中添加多个新的导航菜单位置
 */
function add_custom_navigation_menus() {
    // 添加第一个导航菜单位置
    register_nav_menu('primary', '主导航菜单');

    // 添加第二个导航菜单位置
    register_nav_menu('secondary', '次导航菜单');
}

// 在主题初始化时调用 add_custom_navigation_menus 函数
add_action('after_setup_theme', 'add_custom_navigation_menus');

在上述代码中,我们使用了 WordPress 提供的 register_nav_menu 函数来添加多个新的导航菜单位置。该函数接受两个参数,第一个参数为导航菜单位置的标识符,第二个参数为导航菜单位置的名称。你可以根据需要添加任意数量的导航菜单位置。

在你的主题中,你可以使用以下代码片段来显示已注册的导航菜单:

/**
 * 显示导航菜单
 */
function display_navigation_menu($menu_location) {
    $menu_items = wp_get_nav_menu_items($menu_location);

    if ($menu_items) {
        echo '<ul>';

        foreach ($menu_items as $menu_item) {
            echo '<li><a href="' . $menu_item->url . '">' . $menu_item->title . '</a></li>';
        }

        echo '</ul>';
    }
}

// 调用 display_navigation_menu 函数来显示主导航菜单
display_navigation_menu('primary');

// 调用 display_navigation_menu 函数来显示次导航菜单
display_navigation_menu('secondary');

在上述代码中,我们使用了 WordPress 提供的 wp_get_nav_menu_items 函数来获取指定导航菜单位置的菜单项。然后,我们遍历菜单项,逐个显示导航链接。你可以根据需要自定义导航菜单的 HTML 结构和样式。

以上代码片段返回的是 Markdown 格式,可供在文档中展示和阅读。