WP_Navigation_Block_Renderer::get_nav_attributes
Get the wrapper attributes
Метод класса: WP_Navigation_Block_Renderer{}
Хуков нет.
Возвращает
string. Returns the navigation block markup.
Использование
$result = WP_Navigation_Block_Renderer::get_nav_attributes( $attributes, $inner_blocks );
- $attributes(массив) (обязательный)
- The block attributes.
- $inner_blocks(WP_Block_List) (обязательный)
- A list of inner blocks.
Список изменений
| С версии 6.5.0 | Введена. |
Код WP_Navigation_Block_Renderer::get_nav_attributes() WP Navigation Block Renderer::get nav attributes WP 7.1.2
private static function get_nav_attributes( $attributes, $inner_blocks ) {
$is_interactive = static::is_interactive( $attributes, $inner_blocks );
$is_responsive_menu = static::is_responsive( $attributes );
$style = static::get_styles( $attributes );
$class = static::get_classes( $attributes );
$extra_attributes = array(
'class' => $class,
'style' => $style,
);
// Only add aria-label for top-level navigation blocks.
// Skip navigation blocks marked as being within overlay template parts.
$is_within_overlay = $attributes['_isWithinOverlayTemplatePart'] ?? false;
if ( $is_within_overlay ) {
$nav_menu_name = static::get_navigation_name( $attributes );
} else {
$nav_menu_name = static::get_unique_navigation_name( $attributes );
}
if ( ! empty( $nav_menu_name ) ) {
$extra_attributes['aria-label'] = $nav_menu_name;
}
$wrapper_attributes = get_block_wrapper_attributes( $extra_attributes );
if ( $is_responsive_menu ) {
$nav_element_directives = static::get_nav_element_directives( $is_interactive );
$wrapper_attributes .= ' ' . $nav_element_directives;
}
return $wrapper_attributes;
}