确定已注册的导航菜单位置是否分配了菜单。

原型

has_nav_menu( string $location )

参数

$location (string) (Required) 菜单位置标识符。

返回值

(bool)  位置是否有菜单。

源文件

路径:wp-includes/nav-menu.php

<?php
...
function has_nav_menu( $location ) {
	$has_nav_menu = false;
	$registered_nav_menus = get_registered_nav_menus();
	if ( isset( $registered_nav_menus[ $location ] ) ) {
		$locations = get_nav_menu_locations();
		$has_nav_menu = ! empty( $locations[ $location ] );
	}
	/**
	 * Filters whether a nav menu is assigned to the specified location.
	 *
	 * @since 4.3.0
	 *
	 * @param bool   $has_nav_menu Whether there is a menu assigned to a location.
	 * @param string $location     Menu location.
	 */
	return apply_filters( 'has_nav_menu', $has_nav_menu, $location );
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/has_nav_menu/