Ejemplo n.º 1
0
 function avada_modern_menu()
 {
     $html = '';
     if ('modern' == Avada()->settings->get('mobile_menu_design')) {
         $header_content_3 = Avada()->settings->get('header_v4_content');
         $html .= '<div class="fusion-mobile-menu-icons">';
         // Make sure mobile menu toggle is not loaded when ubermenu is used
         if (!function_exists('ubermenu_get_menu_instance_by_theme_location') || function_exists('ubermenu_get_menu_instance_by_theme_location') && !ubermenu_get_menu_instance_by_theme_location('main_navigation')) {
             $html .= '<a href="#" class="fusion-icon fusion-icon-bars"></a>';
         }
         if (('v4' == Avada()->settings->get('header_layout') || 'Top' != Avada()->settings->get('header_position')) && ('Tagline And Search' == $header_content_3 || 'Search' == $header_content_3)) {
             $html .= '<a href="#" class="fusion-icon fusion-icon-search"></a>';
         }
         if (class_exists('WooCommerce') && Avada()->settings->get('woocommerce_cart_link_main_nav')) {
             $html .= '<a href="' . get_permalink(get_option('woocommerce_cart_page_id')) . '" class="fusion-icon fusion-icon-shopping-cart"></a>';
         }
         $html .= '</div>';
     }
     return $html;
 }
Ejemplo n.º 2
0
 function avada_add_search_to_main_nav($items, $args)
 {
     $ubermenu = false;
     if (function_exists('ubermenu_get_menu_instance_by_theme_location') && ubermenu_get_menu_instance_by_theme_location($args->theme_location)) {
         // disable woo cart on ubermenu navigations
         $ubermenu = true;
     }
     if ($ubermenu == false) {
         if ($args->theme_location == 'main_navigation' || $args->theme_location == 'sticky_navigation') {
             if (fusion_get_theme_option('main_nav_search_icon')) {
                 $items .= '<li class="fusion-custom-menu-item fusion-main-menu-search">';
                 $items .= '<a class="fusion-main-menu-icon"></a>';
                 $items .= '<div class="fusion-custom-menu-item-contents">';
                 $items .= get_search_form(false);
                 $items .= '</div>';
                 $items .= '</li>';
             }
         }
     }
     return $items;
 }
Ejemplo n.º 3
0
function ubermenu_get_nav_menu_args($args, $integration_type, $config_id = 0)
{
    if (isset($args['uber_segment'])) {
        return $args;
    }
    //Ignore segments
    $theme_location = '';
    $nav_menu_id = 0;
    $strict_mode = ubermenu_op('strict_mode', 'general') == 'off' ? false : true;
    //Determine theme_location
    //Determine config_id (if not passed)
    //Determine nav_menu_id
    switch ($integration_type) {
        case 'auto':
            //Is it UberMenu?
            //Check for assigned Theme Location
            //For automatic integration, if there is no theme_location, we can't do anything
            if ($strict_mode && (!isset($args['theme_location']) || !$args['theme_location'])) {
                return $args;
            }
            //Determine Menu Instance ID by theme_location
            if (isset($args['theme_location']) && $args['theme_location']) {
                $theme_location = $args['theme_location'];
                $config_id = ubermenu_get_menu_instance_by_theme_location($theme_location);
            } else {
                $config_id = 'main';
                //However, in this case we require a 'menu' param to be passed
                if (isset($args['menu']) && $args['menu']) {
                    $nav_menu_id = $args['menu'];
                } else {
                    $nav_menu_id = '_undetermined_';
                }
            }
            //If this theme location is not activated, ignore it
            if (!$config_id) {
                return $args;
            }
            //Find nav_menu_id
            //look up the ID based on the theme location, assuming it exists
            if ($theme_location && has_nav_menu($theme_location)) {
                $menus = get_nav_menu_locations();
                $nav_menu_id = $menus[$theme_location];
            }
            //Check that we're on the right theme location instance
            if ($theme_location) {
                //Count this theme location instance
                _UBERMENU()->count_theme_location($theme_location);
                //Determine what instance we're targeting
                $target_instance = ubermenu_op('theme_location_instance', $config_id);
                if (is_numeric($target_instance)) {
                    $target_instance = (int) $target_instance;
                } else {
                    if ($target_instance == '') {
                        $target_instance = 0;
                    } else {
                        ubermenu_admin_notice(__('Theme Location Instance should be an integer or leave blank.  Defaulting to 0.', 'ubermenu'));
                        $target_instance = 0;
                    }
                }
                //If we're not targeting all instances
                if ($target_instance > 0) {
                    //Check that the target theme location instance is the current theme location instance
                    //If it isn't, then ignore
                    if ($target_instance !== _UBERMENU()->get_theme_location_count($theme_location)) {
                        return $args;
                    }
                }
            }
            break;
        case 'api':
            //instance_id
            if ($config_id != 'main') {
                $instances = ubermenu_get_menu_instances();
                if (array_search($config_id, $instances) === false) {
                    $notice = '<strong>' . $config_id . '</strong> ' . __('is not a valid Instance ID.  Please pass a valid instance ID to the ubermenu() function.', 'ubermenu');
                    ubermenu_admin_notice($notice);
                }
            }
            //Always UberMenu
            $theme_location = isset($args['theme_location']) && $args['theme_location'] ? $args['theme_location'] : 0;
            //If a Menu ID was passed in the args, use that
            if (isset($args['menu']) && $args['menu']) {
                $nav_menu_id = $args['menu'];
            } else {
                $_menu_id = ubermenu_op('nav_menu_id', $config_id);
                if ($_menu_id && $_menu_id != '_none') {
                    $nav_menu_id = $_menu_id;
                } else {
                    //No menu passed, no menu assigned, try the theme location
                    if ($theme_location && has_nav_menu($theme_location)) {
                        $menus = get_nav_menu_locations();
                        $nav_menu_id = $menus[$theme_location];
                    }
                }
                //Setup args
                if ($nav_menu_id) {
                    $args['menu'] = $nav_menu_id;
                    //TODO ...
                }
            }
            //Don't know what the nav menu ID is still
            if (!$nav_menu_id) {
                if (!$theme_location) {
                    $args['theme_location'] = '__um_undetermined__';
                }
            }
            //If a theme location was used, count it.  But we don't care if this is the target
            //or not, since the API was used
            if ($theme_location) {
                _UBERMENU()->count_theme_location($theme_location);
            }
            break;
    }
    //Allow filtering to a different Configuration at this point
    $config_id = apply_filters('ubermenu_configuration_id', $config_id, $args);
    //Basics
    $args['container_class'] = 'ubermenu ubermenu-nojs';
    $args['menu_class'] = 'ubermenu-nav';
    $args['walker'] = new UberMenuWalker();
    $args['uber_instance'] = $config_id;
    $args['fallback_cb'] = 'ubermenu_fallback_cb';
    $args['depth'] = 0;
    $args['items_wrap'] = '<ul id="%1$s" class="%2$s">%3$s</ul>';
    $args['link_before'] = '';
    $args['link_after'] = '';
    $args['uber_integration_type'] = $integration_type;
    //ID
    $args['container_id'] = 'ubermenu-' . $config_id . '-' . $nav_menu_id;
    if ($theme_location) {
        $args['container_id'] .= '-' . sanitize_key($theme_location);
        $theme_location_count = _UBERMENU()->get_theme_location_count($theme_location);
        if ($theme_location_count > 1) {
            $args['container_id'] .= '-' . $theme_location_count;
        }
    }
    //Inner ID
    if (!isset($args['menu_id']) || !$args['menu_id'] || $integration_type == 'auto') {
        $args['menu_id'] = 'ubermenu-nav-' . $config_id . '-' . $nav_menu_id;
        if ($theme_location) {
            $args['menu_id'] .= '-' . sanitize_key($theme_location);
        }
    }
    //Cache
    $args['menu_cache_key'] = "|uber|{$config_id}|{$nav_menu_id}|{$theme_location}";
    //For WP Menu Cache Plugin
    //Container
    $args['container'] = ubermenu_op('container_tag', $config_id);
    // . ' role="navigation"';
    //Menu Instance ID
    $args['container_class'] .= ' ubermenu-' . $config_id;
    //Menu ID
    $args['container_class'] .= ' ubermenu-menu-' . $nav_menu_id;
    //Theme Location
    if ($theme_location) {
        $args['container_class'] .= ' ubermenu-loc-' . sanitize_title($theme_location);
    }
    //Responsive
    if (ubermenu_op('responsive', $config_id) == 'on') {
        $args['container_class'] .= ' ubermenu-responsive';
        $breakpoint = ubermenu_op('responsive_breakpoint', 'general');
        if (!$breakpoint) {
            $breakpoint = 'default';
        } else {
            $breakpoint = intval($breakpoint);
        }
        $args['container_class'] .= ' ubermenu-responsive-' . $breakpoint;
    }
    //Responsive no collapse
    if (ubermenu_op('responsive_collapse', $config_id) == 'off') {
        $args['container_class'] .= ' ubermenu-responsive-nocollapse';
    } else {
        $args['container_class'] .= ' ubermenu-responsive-collapse';
    }
    //Orientation
    $orientation = ubermenu_op('orientation', $config_id) == 'vertical' ? 'vertical' : 'horizontal';
    $args['container_class'] .= ' ubermenu-' . $orientation;
    //Transition
    $transition = ubermenu_op('transition', $config_id);
    $args['container_class'] .= ' ubermenu-transition-' . $transition;
    //Trigger
    $trigger = ubermenu_op('trigger', $config_id);
    $args['container_class'] .= ' ubermenu-trigger-' . $trigger;
    //Skin
    $skin = ubermenu_op('skin', $config_id);
    $args['container_class'] .= ' ubermenu-skin-' . $skin;
    $args['container_class'] .= ' ' . _UBERMENU()->get_skin_classes($skin);
    //echo '[[['._UBERMENU()->get_skin_classes( $skin ).']]]';
    //Menu Bar Alignment
    $bar_align = ubermenu_op('bar_align', $config_id);
    $args['container_class'] .= ' ubermenu-bar-align-' . $bar_align;
    //Menu Item Alignment
    $items_align = ubermenu_op('items_align', $config_id);
    $args['container_class'] .= ' ubermenu-items-align-' . $items_align;
    //Menu Item Vertical Alignment
    // $items_align_vertical = ubermenu_op( 'items_align_vertical' , $config_id );
    // if( $items_align_vertical != 'bottom' ){
    // 	$args['container_class'].= ' ubermenu-items-align-'.$items_align_vertical;
    // }
    //Inner Menu Center
    if (ubermenu_op('bar_inner_center', $config_id) == 'on') {
        $args['container_class'] .= ' ubermenu-bar-inner-center';
    }
    //Submenu Bound
    if (ubermenu_op('bound_submenus', $config_id) == 'on' || ubermenu_op('orientation', $config_id) == 'vertical') {
        $args['container_class'] .= ' ubermenu-bound';
    } else {
        if (ubermenu_op('bound_submenus', $config_id) == 'inner') {
            $args['container_class'] .= ' ubermenu-bound-inner';
        }
    }
    //Submenu Scrolling
    if ($transition != 'slide' && ubermenu_op('submenu_scrolling', $config_id) != 'on') {
        $args['container_class'] .= ' ubermenu-disable-submenu-scroll';
    }
    //Force Current Submenus
    if (ubermenu_op('force_current_submenus', $config_id) == 'on') {
        $args['container_class'] .= ' ubermenu-force-current-submenu';
    }
    //Invert Submenus
    if (ubermenu_op('invert_submenus', $config_id) == 'on') {
        $args['container_class'] .= ' ubermenu-invert';
    }
    //Submenu Background Image Hiding
    if (ubermenu_op('submenu_background_image_reponsive_hide', $config_id) == 'on') {
        $args['container_class'] .= ' ubermenu-hide-bkgs';
    }
    //Responsive Collapse //responsive_collapse
    //$args['container_class'].= ' ubermenu-collapse';
    //Submenu Indicators
    if (ubermenu_op('display_submenu_indicators', $config_id) == 'on') {
        $args['container_class'] .= ' ubermenu-sub-indicators';
    }
    //Retractors
    if (ubermenu_op('retractor_display_strategy', 'general') == 'responsive') {
        $args['container_class'] .= ' ubermenu-retractors-responsive';
    }
    //Icon Display
    if (ubermenu_op('icon_display', $config_id) == 'inline') {
        $args['container_class'] .= ' ubermenu-icons-inline';
    }
    //Accessibility - handled in JS only now
    // if( ubermenu_op( 'accessible' , 'general' ) == 'on' ){
    // 	$args['container_class'].= ' ubermenu-accessible';
    // }
    //Don't allow class filtering
    if (ubermenu_op('disable_class_filtering', 'general') == 'on') {
        remove_all_filters('nav_menu_css_class');
    }
    //$args['container_class'].= ' ubermenu-pad-submenus';
    //Set the Current Instance for Reference
    _UBERMENU()->set_current_config($config_id);
    return apply_filters('ubermenu_nav_menu_args', $args, $config_id);
}
Ejemplo n.º 4
0
function fusion_add_woo_cart_to_widget($items, $args)
{
    if (class_exists('WooCommerce')) {
        $ubermenu = false;
        if (function_exists('ubermenu_get_menu_instance_by_theme_location') && ubermenu_get_menu_instance_by_theme_location($args->theme_location)) {
            // disable woo cart on ubermenu navigations
            $ubermenu = true;
        }
        if ($ubermenu == false && $args->container_class == 'fusion-widget-menu') {
            $items .= fusion_add_woo_cart_to_widget_html();
        }
    }
    return $items;
}
Ejemplo n.º 5
0
 function avada_modern_menu()
 {
     $html = '';
     if (fusion_get_theme_option('mobile_menu_design') == 'modern') {
         $header_content_3 = fusion_get_theme_option('header_v4_content');
         $html .= '<div class="fusion-mobile-menu-icons">';
         // Make sure mobile menu toggle is not loaded when ubermenu is used
         if (!function_exists('ubermenu_get_menu_instance_by_theme_location') || function_exists('ubermenu_get_menu_instance_by_theme_location') && !ubermenu_get_menu_instance_by_theme_location('main_navigation')) {
             $html .= '<a href="#" class="fusion-icon fusion-icon-bars"></a>';
         }
         if ((fusion_get_theme_option('header_layout') == 'v4' || fusion_get_theme_option('header_position') != 'Top') && ($header_content_3 == 'Tagline And Search' || $header_content_3 == 'Search')) {
             $html .= '<a href="#" class="fusion-icon fusion-icon-search"></a>';
         }
         if (class_exists('WooCommerce') && fusion_get_theme_option('woocommerce_cart_link_main_nav')) {
             $html .= sprintf('<a href="%s" class="fusion-icon fusion-icon-shopping-cart"></a>', get_permalink(get_option('woocommerce_cart_page_id')));
         }
         $html .= '</div>';
     }
     return $html;
 }
Ejemplo n.º 6
0
 function avada_main_menu($flyout_menu = false)
 {
     $sticky_menu = '';
     $main_menu_args = array('theme_location' => 'main_navigation', 'depth' => 5, 'menu_class' => 'fusion-menu', 'items_wrap' => '<ul id="%1$s" class="%2$s">%3$s</ul>', 'fallback_cb' => 'FusionCoreFrontendWalker::fallback', 'walker' => new FusionCoreFrontendWalker(), 'container_class' => 'fusion-main-menu', 'container' => 'div');
     if ($flyout_menu) {
         $flyout_menu_args = array('depth' => 1, 'container' => false, 'echo' => false);
         $main_menu_args = wp_parse_args($flyout_menu_args, $main_menu_args);
         $main_menu = wp_nav_menu($main_menu_args);
         return $main_menu;
     } else {
         wp_nav_menu($main_menu_args);
         if (has_nav_menu('sticky_navigation') && (!function_exists('ubermenu_get_menu_instance_by_theme_location') || function_exists('ubermenu_get_menu_instance_by_theme_location') && !ubermenu_get_menu_instance_by_theme_location('sticky_navigation'))) {
             $sticky_menu_args = array('theme_location' => 'sticky_navigation', 'container_class' => 'fusion-main-menu fusion-sticky-menu', 'menu_id' => 'menu-main-menu-1');
             $sticky_menu_args = wp_parse_args($sticky_menu_args, $main_menu_args);
             wp_nav_menu($sticky_menu_args);
         }
         // Make sure mobile menu is not loaded when we use slideout menu or ubermenu
         if (!function_exists('ubermenu_get_menu_instance_by_theme_location') || function_exists('ubermenu_get_menu_instance_by_theme_location') && !ubermenu_get_menu_instance_by_theme_location('main_navigation')) {
             avada_mobile_main_menu();
         }
     }
 }
Ejemplo n.º 7
0
 function avada_add_search_to_main_nav($items, $args)
 {
     $ubermenu = false;
     if (function_exists('ubermenu_get_menu_instance_by_theme_location') && ubermenu_get_menu_instance_by_theme_location($args->theme_location)) {
         // disable woo cart on ubermenu navigations
         $ubermenu = true;
     }
     if (Avada()->settings->get('header_layout') != 'v6' && false == $ubermenu) {
         if ('main_navigation' == $args->theme_location || 'sticky_navigation' == $args->theme_location) {
             if (Avada()->settings->get('main_nav_search_icon')) {
                 $items .= '<li class="fusion-custom-menu-item fusion-main-menu-search">';
                 $items .= '<a class="fusion-main-menu-icon"></a>';
                 $items .= '<div class="fusion-custom-menu-item-contents">';
                 $items .= get_search_form(false);
                 $items .= '</div>';
                 $items .= '</li>';
             }
         }
     }
     return $items;
 }
Ejemplo n.º 8
0
<?php

if ('modern' == Avada()->settings->get('mobile_menu_design')) {
    ?>
	<?php 
    $header_content_3 = Avada()->settings->get('header_v4_content');
    ?>
	<div class="fusion-mobile-menu-icons">
		<?php 
    // Make sure mobile menu toggle is not loaded when ubermenu is used
    ?>
		<?php 
    if (!function_exists('ubermenu_get_menu_instance_by_theme_location') || function_exists('ubermenu_get_menu_instance_by_theme_location') && !ubermenu_get_menu_instance_by_theme_location('main_navigation')) {
        ?>
			<a href="#" class="fusion-icon fusion-icon-bars"></a>
		<?php 
    }
    ?>

		<?php 
    if (('v4' == Avada()->settings->get('header_layout') || 'Top' != Avada()->settings->get('header_position')) && ('Tagline And Search' == $header_content_3 || 'Search' == $header_content_3)) {
        ?>
			<a href="#" class="fusion-icon fusion-icon-search"></a>
		<?php 
    }
    ?>

		<?php 
    if (class_exists('WooCommerce') && Avada()->settings->get('woocommerce_cart_link_main_nav')) {
        ?>
			<a href="<?php