fictioneer/partials/_navigation.php

79 lines
2.4 KiB
PHP
Raw Normal View History

2023-01-21 01:31:34 +01:00
<?php
/**
* Partial: Navigation
*
* Renders the main navigation bar.
*
* @package WordPress
* @subpackage Fictioneer
* @since 5.0
*
* @internal $args['post_id'] Optional. Current post ID.
* @internal $args['story_id'] Optional. Current story ID (if chapter).
* @internal $args['header_image_url'] URL of the filtered header image or false.
* @internal $args['header_args'] Arguments passed to the header.php partial.
2023-01-21 01:31:34 +01:00
*/
?>
<?php
// No direct access!
defined( 'ABSPATH' ) OR exit;
?>
2023-01-21 01:31:34 +01:00
<nav id="full-navigation" class="main-navigation" aria-label="Main Navigation">
2023-07-30 17:00:40 +02:00
<div id="nav-observer-sticky" class="observer nav-observer"></div>
2023-01-21 01:31:34 +01:00
<div class="main-navigation__background"></div>
2023-07-29 14:49:22 +02:00
<?php do_action( 'fictioneer_navigation_top', $args ); ?>
2023-01-21 01:31:34 +01:00
<div class="main-navigation__wrapper">
<div class="main-navigation__left">
<?php
if ( has_nav_menu( 'nav_menu' ) ) {
$menu = null;
if ( FICTIONEER_ENABLE_MENU_TRANSIENTS ) {
$menu = get_transient( 'fictioneer_main_nav_menu' );
}
if ( empty( $menu ) ) {
$menu = wp_nav_menu(
array(
'theme_location' => 'nav_menu',
'menu_class' => 'main-navigation__list',
'container' => '',
'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>',
'echo' => false
)
);
if ( $menu !== false ) {
$menu = str_replace( 'class="', 'data-menu-id="main" class="', $menu );
$menu = str_replace( 'current_page_item', '', $menu );
$menu = str_replace( 'current-menu-item', '', $menu );
$menu = str_replace( 'aria-current="page"', '', $menu );
}
if ( FICTIONEER_ENABLE_MENU_TRANSIENTS ) {
set_transient( 'fictioneer_main_nav_menu', $menu );
}
}
echo $menu;
}
2023-01-21 01:31:34 +01:00
?>
</div>
<div class="main-navigation__right">
<?php get_template_part( 'partials/_icon-menu', null, array( 'location' => 'in-navigation' ) ); ?>
2023-01-21 01:31:34 +01:00
<label for="mobile-menu-toggle" class="mobile-menu-button follows-alert-number">
<?php fictioneer_icon( 'fa-bars', 'off' ); ?>
<?php fictioneer_icon( 'fa-xmark', 'on' ); ?>
</label>
</div>
</div>
2023-07-29 14:49:22 +02:00
<?php do_action( 'fictioneer_navigation_bottom', $args ); ?>
2023-01-21 01:31:34 +01:00
</nav>