📜  register_nav_menu 示例 - PHP (1)

📅  最后修改于: 2023-12-03 15:04:52.991000             🧑  作者: Mango

使用 register_nav_menu 注册主菜单

在 WordPress 主题中,我们可以使用 register_nav_menu 函数来注册一个自定义的主菜单。主菜单通常显示在网站的顶部,包含导航链接,比如“首页”、“关于”、“联系我们”等。

如何使用 register_nav_menu 函数

以下是一个使用 register_nav_menu 函数来注册主菜单的简单示例代码:

// Register a custom menu location
function my_theme_register_menus() {
    register_nav_menu( 'primary', __( 'Primary Menu', 'my-theme' ) );
}
add_action( 'after_setup_theme', 'my_theme_register_menus' );

在上面的示例中,我们在主题初始化完成之后(即 after_setup_theme 钩子),使用 register_nav_menu 函数来注册一个名为 primary 的自定义菜单位置,并将其显示名称设置为“Primary Menu”。注意,my-theme 是主题名称。

在主题的 header.php 文件中,我们可以使用 wp_nav_menu 函数来显示我们刚刚注册的菜单。

<!-- Primary navigation -->
<nav id="site-navigation" class="main-navigation" role="navigation">
	<?php
	if ( has_nav_menu( 'primary' ) ) {
		wp_nav_menu( array(
			'theme_location'	=> 'primary',
			'menu_id'			=> 'primary-menu',
			'menu_class'		=> 'menu',
			'depth'				=> 2, // How many levels of the hierarchy should be included
			'fallback_cb'		=> 'wp_page_menu', // Optional fallback function
		) );
	}
	?>
</nav>

在上面的示例中,我们在 <nav> 标签中使用 wp_nav_menu 函数来显示名为 primary 的菜单。我们还使用了自定义的 CSS 类名和menu_id

定制主菜单的样式

通过在主题的自定义样式表文件中添加 CSS 代码,我们可以轻松地调整主菜单的样式。以下是一个简单的示例代码,它可以更改主菜单链接的颜色和字号:

/* Change font size and color for the primary menu */
#primary-menu .menu-item a {
	font-size: 18px;
	color: #333;
}
总结

register_nav_menu 函数是一个非常强大的 WordPress 函数,可以帮助我们快速注册一个自定义的主菜单,并让它显示在网站的顶部。我们可以通过自定义样式表文件来调整主菜单的样式,从而让它更符合我们的设计需求。