).
*
* @since 3.0.0
* @var Array
*/
$menu_classes = apply_filters( 'astra_primary_menu_classes', array( 'main-header-menu', 'ast-nav-menu', 'ast-flex', $submenu_class, $stack_on_mobile_class ) );
$menu_name = wp_get_nav_menu_name( $theme_location );
$items_wrap = ' 'ast-' . esc_attr( $device ) . '-site-navigation',
'class' => 'site-navigation ast-flex-grow-1 navigation-accessibility site-header-focus-item',
'aria-label' => esc_attr__( 'Site Navigation: ', 'astra' ) . $menu_name,
)
);
$items_wrap .= '>';
$items_wrap .= '';
$items_wrap .= '
';
$items_wrap .= '
';
$items_wrap .= ' ';
// Fallback Menu if primary menu not set.
$fallback_menu_args = array(
'theme_location' => $theme_location,
'menu_id' => $menu_id,
'menu_class' => 'main-navigation',
'container' => 'div',
'before' => '
',
'walker' => new Astra_Walker_Page(),
'echo' => false,
);
// To add default alignment for navigation which can be added through any third party plugin.
// Do not add any CSS from theme except header alignment.
echo ''; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped
if ( is_customize_preview() ) {
Astra_Builder_UI_Controller::render_customizer_edit_button();
}
if ( has_nav_menu( $theme_location ) ) {
$mobile_menu_markup = wp_nav_menu(
array(
'menu_id' => $menu_id,
'menu_class' => esc_attr( implode( ' ', $menu_classes ) ),
'container' => 'div',
'container_class' => 'main-header-bar-navigation',
'items_wrap' => $items_wrap,
'theme_location' => $theme_location,
'echo' => false,
)
);
// Adding rel="nofollow" for duplicate menu render.
$mobile_menu_markup = $astra_builder->nofollow_markup( $theme_location, $mobile_menu_markup );
echo do_shortcode( $mobile_menu_markup );
} else {
echo '
';
echo ' 'ast-' . esc_attr( $device ) . '-site-navigation',
'class' => 'site-navigation ast-flex-grow-1 navigation-accessibility',
'aria-label' => esc_attr__( 'Site Navigation', 'astra' ),
)
)
);
echo '>';
$mobile_menu_markup = wp_page_menu( $fallback_menu_args );
// Adding rel="nofollow" for duplicate menu render.
$mobile_menu_markup = $astra_builder->nofollow_markup( $theme_location, $mobile_menu_markup );
echo do_shortcode( $mobile_menu_markup );
echo ' ';
echo '
';
}
echo '
';
}
}
/**
* Kicking this off by creating an object.
*/
new Astra_Mobile_Menu_Component();