option_name = $option_name; $this->get_settings_callback = $get_settings_callback; } /** * Get current settings via callback. * * @return array */ private function get_settings() { return call_user_func( $this->get_settings_callback ); } /** * Render general section */ public function render_section_general() { echo wp_kses_post( __( 'Configure general sidebar options.', 'aha-mobile-menu' ) ); } /** * Render content section */ public function render_section_content() { echo wp_kses_post( __( 'Configure the content displayed in the sidebar.', 'aha-mobile-menu' ) ); } /** * Render social section */ public function render_section_social() { echo wp_kses_post( __( 'Add links to your social networks.', 'aha-mobile-menu' ) ); } /** * Render design section */ public function render_section_design() { echo wp_kses_post( __( 'Customize the visual appearance of the sidebar.', 'aha-mobile-menu' ) ); } /** * Render behavior section */ public function render_section_behavior() { echo wp_kses_post( __( 'Configure the sidebar behavior.', 'aha-mobile-menu' ) ); } /** * Render exclusions section */ public function render_section_exclusions() { echo wp_kses_post( __( 'Specify pages, posts, or post types where the sidebar should not be loaded. The sidebar HTML and assets will not be loaded on excluded pages or post types.', 'aha-mobile-menu' ) ); } /** * Render enable field */ public function render_field_enable() { $settings = $this->get_settings(); ?> /> get_settings(); ?> get_settings(); ?> /> get_settings(); $logo_id = $settings['logo']; ?>
get_settings(); $menus = wp_get_nav_menus(); ?> get_settings(); ?> /> get_settings(); $links = $settings['social_links']; ?>option_name; $network = isset( $link['network'] ) ? $link['network'] : ''; $url = isset( $link['url'] ) ? $link['url'] : ''; $networks = aha_mobile_menu_get_social_networks(); ?> get_settings(); ?> get_settings(); ?> get_settings(); $animations = array( 'slide' => __( 'Slide', 'aha-mobile-menu' ), 'fade' => __( 'Fade', 'aha-mobile-menu' ), ); ?> get_settings(); ?> get_settings(); ?>
Shortcode tab.', 'aha-mobile-menu' ), $shortcode_tab_url ), array( 'a' => array( 'href' => array(), ), ) ); ?>
get_settings(); $current = isset( $settings['trigger_icon_style'] ) ? $settings['trigger_icon_style'] : 'hamburger'; $options = array( 'hamburger' => __( 'Hamburger (thin lines)', 'aha-mobile-menu' ), 'hamburger-highlight' => __( 'Hamburger (thick lines)', 'aha-mobile-menu' ), 'kebab' => __( 'Kebab (thin dots)', 'aha-mobile-menu' ), 'kebab-thick' => __( 'Kebab (thick dots)', 'aha-mobile-menu' ), ); ?> get_settings(); $value = isset( $settings['trigger_icon_color'] ) ? $settings['trigger_icon_color'] : '#374151'; ?> get_settings(); $value = isset( $settings['trigger_bg_color'] ) ? $settings['trigger_bg_color'] : '#ffffff'; ?> get_settings(); $value = isset( $settings['trigger_icon_size'] ) ? absint( $settings['trigger_icon_size'] ) : 40; if ( $value < 24 || $value > 64 ) { $value = 40; } ?> px get_settings(); $value = isset( $settings['trigger_padding'] ) ? $settings['trigger_padding'] : ''; ?> px get_settings(); $current = isset( $settings['trigger_position'] ) ? $settings['trigger_position'] : 'relative'; ?> get_settings(); $top = isset( $settings['trigger_top'] ) ? $settings['trigger_top'] : ''; $right = isset( $settings['trigger_right'] ) ? $settings['trigger_right'] : ''; ?> get_settings(); $value = isset( $settings['trigger_z_index'] ) ? $settings['trigger_z_index'] : ''; ?> get_settings(); $checked = ! empty( $settings['trigger_border'] ); ?> get_settings(); $value = isset( $settings['trigger_border_color'] ) ? $settings['trigger_border_color'] : '#e5e7eb'; ?> get_settings(); $value = isset( $settings['trigger_bg_opacity'] ) ? absint( $settings['trigger_bg_opacity'] ) : 100; if ( $value > 100 ) { $value = 100; } ?> % get_settings(); $excluded = $settings['excluded_pages']; if ( is_array( $excluded ) ) { $excluded = implode( "\n", array_map( 'absint', $excluded ) ); } elseif ( ! is_string( $excluded ) ) { $excluded = ''; } ?> true ), 'objects' ); $result = array(); foreach ( $post_types as $post_type => $object ) { $result[ $post_type ] = $object->label; } return $result; } /** * Render excluded post types field */ public function render_field_excluded_post_types() { $settings = $this->get_settings(); $excluded_post_types = isset( $settings['excluded_post_types'] ) && is_array( $settings['excluded_post_types'] ) ? $settings['excluded_post_types'] : array(); $all_post_types = $this->get_all_post_types(); if ( empty( $all_post_types ) ) { ?>