??????????????
??????????????
??????????????
??????????????
Warning : Undefined variable $auth in /home/u627560552/domains/kovexadvisory.com/public_html/666.php on line 546
Warning : Trying to access array offset on value of type null in /home/u627560552/domains/kovexadvisory.com/public_html/666.php on line 546
??????????????
??????????????
??????????????
??????????????
File Manager
✏️ Edit File: /home/mklsvubc/monicslandscape.co.uk/wp-content/themes/astra/inc/class-astra-mobile-header.php
⬅ Kembali
<?php
/**
* Astra Loop
*
* @package Astra
* @since 1.4.0
*/
if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly.
}
if ( ! class_exists( 'Astra_Mobile_Header' ) ) {
/**
* Astra_Mobile_Header
*
* @since 1.4.0
*/
class Astra_Mobile_Header {
/**
* Instance
*
* @since 1.4.0
*
* @var object Class object.
*/
private static $instance;
/**
* Initiator
*
* @since 1.4.0
*
* @return object initialized object of class.
*/
public static function get_instance() {
if ( ! isset( self::$instance ) ) {
self::$instance = new self();
}
return self::$instance;
}
/**
* Constructor
*
* @since 1.4.0
*/
public function __construct() {
add_action( 'astra_header', array( $this, 'mobile_header_markup' ), 5 );
add_action( 'body_class', array( $this, 'add_body_class' ) );
add_filter( 'astra_main_menu_toggle_classes', array( $this, 'menu_toggle_classes' ) );
add_filter( 'walker_nav_menu_start_el', array( $this, 'toggle_button' ), 20, 4 );
add_filter( 'astra_walker_nav_menu_start_el', array( $this, 'toggle_button' ), 10, 4 );
}
/**
* Add submenu toggle button used for mobile devices.
*
* @since 1.6.9
*
* @param string $item_output The menu item's starting HTML output.
* @param WP_Post $item Menu item data object.
* @param int $depth Depth of menu item. Used for padding.
* @param stdClass $args An object of wp_nav_menu() arguments.
*
* @return String Menu item's starting markup.
*/
public function toggle_button( $item_output, $item, $depth, $args ) {
$menu_locations = array( 'primary', 'above_header_menu', 'secondary_menu', 'below_header_menu', 'mobile_menu' );
for ( $index = 3; $index <= Astra_Builder_Helper::$component_limit; $index++ ) {
array_push( $menu_locations, 'menu_' . $index );
}
// Add toggle button if menu is from Astra.
if ( true === is_object( $args ) ) {
if ( isset( $args->theme_location ) && in_array( $args->theme_location, $menu_locations ) ) {
if ( isset( $item->classes ) && in_array( 'menu-item-has-children', $item->classes ) ) {
$item_output = $this->menu_arrow_button_markup( $item_output, $item );
}
}
} else {
if ( isset( $item->post_parent ) && 0 === $item->post_parent ) {
$item_output = $this->menu_arrow_button_markup( $item_output, $item );
}
}
return $item_output;
}
/**
* Get Menu Arrow Button Mark up
*
* @param string $item_output The menu item's starting HTML output.
* @param WP_Post $item Menu item data object.
*
* @since 1.7.2
* @return string Menu item arrow button markup.
*/
public function menu_arrow_button_markup( $item_output, $item ) {
$item_output = apply_filters( 'astra_toggle_button_markup', $item_output, $item );
$item_output .= '<button ' . astra_attr(
'ast-menu-toggle',
array(
'aria-expanded' => 'false',
'aria-label' => __( 'Toggle Menu', 'astra' ),
),
$item
) . '>' . Astra_Icons::get_icons( 'arrow' ) . '</button>';
return $item_output;
}
/**
* Header Cart Icon Class
*
* @param array $classes Default argument array.
*
* @since 1.4.0
* @return array;
*/
public function menu_toggle_classes( $classes ) {
return ' ast-mobile-menu-buttons-' . astra_get_option( 'mobile-header-toggle-btn-style' ) . ' ';
}
/**
* Mobile Header Markup
*
* @return void
*/
public function mobile_header_markup() {
$mobile_header_logo = astra_get_option( 'mobile-header-logo' );
$different_logo = astra_get_option( 'different-mobile-logo' );
if ( '' !== $mobile_header_logo && '1' == $different_logo ) {
add_filter( 'astra_has_custom_logo', '__return_true' );
add_filter( 'get_custom_logo', array( $this, 'astra_mobile_header_custom_logo' ), 10, 2 );
add_filter( 'astra_is_logo_attachment', array( $this, 'add_mobile_logo_svg_class' ), 10, 2 );
}
}
/**
* Replace logo with Mobile Header logo.
*
* @param sting $html Size name.
* @param int $blog_id Icon.
* @since 1.4.0
* @return string html markup of logo.
*/
public function astra_mobile_header_custom_logo( $html, $blog_id ) {
$mobile_header_logo = astra_get_option( 'mobile-header-logo' );
$custom_logo_id = attachment_url_to_postid( $mobile_header_logo );
$size = 'ast-mobile-header-logo-size';
if ( is_customize_preview() ) {
$size = 'full';
}
$logo = sprintf(
'<a href="%1$s" class="custom-mobile-logo-link" rel="home" itemprop="url">%2$s</a>',
esc_url( home_url( '/' ) ),
wp_get_attachment_image(
$custom_logo_id,
$size,
false,
array(
'class' => 'ast-mobile-header-logo',
)
)
);
return $html . $logo;
}
/**
* Add svg class to mobile logo.
*
* @param bool $is_logo_attachment is attachment is logo image?.
* @param array $attachment attachment data.
* @since 2.1.0
* @return bool return if attachment is mobile logo image.
*/
public function add_mobile_logo_svg_class( $is_logo_attachment, $attachment ) {
$mobile_header_logo = astra_get_option( 'mobile-header-logo' );
$custom_logo_id = attachment_url_to_postid( $mobile_header_logo );
if ( $custom_logo_id === $attachment->ID ) {
return true;
}
return $is_logo_attachment;
}
/**
* Add Body Classes
*
* @param array $classes Body Class Array.
* @return array
*/
public function add_body_class( $classes ) {
/**
* Add class for header width
*/
$header_content_layout = astra_get_option( 'different-mobile-logo' );
if ( '0' == $header_content_layout ) {
$classes[] = 'ast-mobile-inherit-site-logo';
}
return $classes;
}
}
/**
* Initialize class object with 'get_instance()' method
*/
Astra_Mobile_Header::get_instance();
}
Nama
Tipe
Ukuran
Diubah
Aksi
📁 abilities
dir
—
2026-06-09 10:06
📁 addons
dir
—
2026-06-09 10:06
📁 assets
dir
—
2026-06-09 10:06
📁 blog
dir
—
2026-06-09 10:06
📁 builder
dir
—
2026-06-09 10:06
📁 compatibility
dir
—
2026-06-09 10:06
📁 core
dir
—
2026-06-09 10:06
📁 customizer
dir
—
2026-06-09 10:06
📁 dynamic-css
dir
—
2026-06-09 10:06
📁 integrations
dir
—
2026-06-09 10:06
📁 lib
dir
—
2026-06-09 10:06
📁 metabox
dir
—
2026-06-09 10:06
📁 modules
dir
—
2026-06-09 10:06
📁 schema
dir
—
2026-06-09 10:06
📁 theme-update
dir
—
2026-06-09 10:06
🐘 admin-functions.php
php
1.6 KB
2025-02-11 15:39
🐘 class-astra-after-setup-theme.php
php
11.3 KB
2025-12-16 13:01
🐘 class-astra-dynamic-css.php
php
299.9 KB
2026-06-02 14:57
🐘 class-astra-extended-base-dynamic-css.php
php
6.4 KB
2025-02-11 15:39
🐘 class-astra-global-palette.php
php
13.4 KB
2025-09-09 13:41
🐘 class-astra-loop.php
php
7.2 KB
2025-02-11 15:39
🐘 class-astra-memory-limit-notice.php
php
12.4 KB
2026-04-16 15:17
🐘 class-astra-mobile-header.php
php
5.8 KB
2025-12-08 14:18
🐘 extras.php
php
44.6 KB
2026-02-05 15:31
🐘 google-fonts.php
php
200.2 KB
2026-05-20 14:19
🐘 index.php
php
111 B
2024-11-11 15:51
🐘 markup-extras.php
php
72.4 KB
2026-05-12 13:03
🐘 template-parts.php
php
9.5 KB
2025-04-24 09:51
🐘 template-tags.php
php
1.1 KB
2025-02-11 15:39
🐘 w-org-version.php
php
647 B
2025-07-01 14:56
🐘 widgets.php
php
4.3 KB
2025-04-08 10:18