updated plugin GP Premium
version 2.1.1
This commit is contained in:
@ -731,6 +731,10 @@ if ( ! function_exists( 'generate_menu_plus_enqueue_css' ) ) {
|
||||
wp_enqueue_style( 'generate-offside', plugin_dir_url( __FILE__ ) . "css/offside{$suffix}.css", array(), GENERATE_MENU_PLUS_VERSION );
|
||||
wp_add_inline_style( 'generate-offside', generate_do_off_canvas_css() );
|
||||
|
||||
if ( class_exists( 'GeneratePress_Typography' ) ) {
|
||||
wp_add_inline_style( 'generate-offside', GeneratePress_Typography::get_css( 'off-canvas-panel' ) );
|
||||
}
|
||||
|
||||
$font_icons = true;
|
||||
|
||||
if ( function_exists( 'generate_get_option' ) ) {
|
||||
@ -968,8 +972,13 @@ if ( ! function_exists( 'generate_menu_plus_mobile_header' ) ) {
|
||||
return;
|
||||
}
|
||||
|
||||
$attributes = array(
|
||||
'id' => 'mobile-header',
|
||||
);
|
||||
|
||||
if ( 'false' !== $settings['mobile_header_auto_hide_sticky'] && $settings['mobile_header_auto_hide_sticky'] ) {
|
||||
$hide_sticky = ' data-auto-hide-sticky="true"';
|
||||
$attributes['data-auto-hide-sticky'] = true;
|
||||
} else {
|
||||
$hide_sticky = '';
|
||||
}
|
||||
@ -980,6 +989,13 @@ if ( ! function_exists( 'generate_menu_plus_mobile_header' ) ) {
|
||||
$microdata = generate_get_microdata( 'navigation' );
|
||||
}
|
||||
|
||||
if ( function_exists( 'generate_get_schema_type' ) ) {
|
||||
if ( 'microdata' === generate_get_schema_type() ) {
|
||||
$attributes['itemtype'] = 'https://schema.org/SiteNavigationElement';
|
||||
$attributes['itemscope'] = true;
|
||||
}
|
||||
}
|
||||
|
||||
$classes = array(
|
||||
'main-navigation',
|
||||
'mobile-header-navigation',
|
||||
@ -1006,8 +1022,23 @@ if ( ! function_exists( 'generate_menu_plus_mobile_header' ) ) {
|
||||
}
|
||||
|
||||
$classes = implode( ' ', $classes );
|
||||
$attributes['class'] = $classes;
|
||||
|
||||
$mobile_header_attributes = sprintf(
|
||||
'id="mobile-header"%1$s class="%2$s" %3$s"',
|
||||
$hide_sticky,
|
||||
esc_attr( $classes ),
|
||||
$microdata
|
||||
);
|
||||
|
||||
if ( function_exists( 'generate_get_attr' ) ) {
|
||||
$mobile_header_attributes = generate_get_attr(
|
||||
'mobile-header',
|
||||
$attributes
|
||||
);
|
||||
}
|
||||
?>
|
||||
<nav id="mobile-header"<?php echo esc_attr( $hide_sticky ); ?> class="<?php echo esc_attr( $classes ); ?>" <?php echo $microdata; // phpcs:ignore -- No escaping needed. ?>>
|
||||
<nav <?php echo $mobile_header_attributes; // phpcs:ignore -- No escaping needed. ?>>
|
||||
<div class="inside-navigation grid-container grid-parent">
|
||||
<?php
|
||||
do_action( 'generate_inside_mobile_header' );
|
||||
@ -1015,8 +1046,20 @@ if ( ! function_exists( 'generate_menu_plus_mobile_header' ) ) {
|
||||
$disable_mobile_header_menu = apply_filters( 'generate_disable_mobile_header_menu', false );
|
||||
|
||||
if ( ! $disable_mobile_header_menu ) :
|
||||
if ( function_exists( 'generate_get_attr' ) ) {
|
||||
$menu_toggle_attributes = generate_get_attr(
|
||||
'mobile-header-menu-toggle',
|
||||
array(
|
||||
'class' => 'menu-toggle',
|
||||
'aria-controls' => 'mobile-menu',
|
||||
'aria-expanded' => 'false',
|
||||
)
|
||||
);
|
||||
} else {
|
||||
$menu_toggle_attributes = 'class="menu-toggle" aria-controls="mobile-menu" aria-expanded="false"';
|
||||
}
|
||||
?>
|
||||
<button class="menu-toggle" aria-controls="mobile-menu" aria-expanded="false">
|
||||
<button <?php echo $menu_toggle_attributes; // phpcs:ignore -- No escaping needed. ?>>
|
||||
<?php
|
||||
do_action( 'generate_inside_mobile_header_menu' );
|
||||
|
||||
@ -1550,6 +1593,9 @@ function generate_do_off_canvas_css() {
|
||||
generate_menu_plus_get_defaults()
|
||||
);
|
||||
|
||||
// Check if we're using our legacy typography system.
|
||||
$using_dynamic_typography = function_exists( 'generate_is_using_dynamic_typography' ) && generate_is_using_dynamic_typography();
|
||||
|
||||
require_once GP_LIBRARY_DIRECTORY . 'class-make-css.php';
|
||||
$css = new GeneratePress_Pro_CSS();
|
||||
|
||||
@ -1558,11 +1604,14 @@ function generate_do_off_canvas_css() {
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li a' );
|
||||
$css->add_property( 'color', esc_attr( $settings['slideout_text_color'] ) );
|
||||
$css->add_property( 'font-weight', esc_attr( $settings['slideout_font_weight'] ) );
|
||||
$css->add_property( 'text-transform', esc_attr( $settings['slideout_font_transform'] ) );
|
||||
|
||||
if ( '' !== $settings['slideout_font_size'] ) {
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_font_size'] ), false, 'px' );
|
||||
if ( ! $using_dynamic_typography ) {
|
||||
$css->add_property( 'font-weight', esc_attr( $settings['slideout_font_weight'] ) );
|
||||
$css->add_property( 'text-transform', esc_attr( $settings['slideout_font_transform'] ) );
|
||||
|
||||
if ( '' !== $settings['slideout_font_size'] ) {
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_font_size'] ), false, 'px' );
|
||||
}
|
||||
}
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation ul ul' );
|
||||
@ -1571,33 +1620,38 @@ function generate_do_off_canvas_css() {
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li a' );
|
||||
$css->add_property( 'color', esc_attr( $settings['slideout_submenu_text_color'] ) );
|
||||
|
||||
if ( '' !== $settings['slideout_font_size'] ) {
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_font_size'] - 1 ), false, 'px' );
|
||||
if ( ! $using_dynamic_typography ) {
|
||||
$css->set_selector( '.slideout-navigation.main-navigation.do-overlay .main-nav ul ul li a' );
|
||||
$css->add_property( 'font-size', '1em' );
|
||||
|
||||
if ( '' !== $settings['slideout_font_size'] ) {
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_font_size'] - 1 ), false, 'px' );
|
||||
}
|
||||
|
||||
if ( '' !== $settings['slideout_mobile_font_size'] ) {
|
||||
$css->start_media_query( generate_premium_get_media_query( 'mobile' ) );
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li a' );
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_mobile_font_size'] ), false, 'px' );
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li a' );
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_mobile_font_size'] - 1 ), false, 'px' );
|
||||
$css->stop_media_query();
|
||||
}
|
||||
}
|
||||
|
||||
if ( '' !== $settings['slideout_mobile_font_size'] ) {
|
||||
$css->start_media_query( generate_premium_get_media_query( 'mobile' ) );
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li a' );
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_mobile_font_size'] ), false, 'px' );
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li a' );
|
||||
$css->add_property( 'font-size', absint( $settings['slideout_mobile_font_size'] - 1 ), false, 'px' );
|
||||
$css->stop_media_query();
|
||||
}
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li:hover > a,.slideout-navigation.main-navigation .main-nav ul li:focus > a,.slideout-navigation.main-navigation .main-nav ul li.sfHover > a' );
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a, .slideout-navigation.main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a, .slideout-navigation.main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a' );
|
||||
$css->add_property( 'color', esc_attr( $settings['slideout_text_hover_color'] ) );
|
||||
$css->add_property( 'background-color', esc_attr( $settings['slideout_background_hover_color'] ) );
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li:hover > a,.slideout-navigation.main-navigation .main-nav ul ul li:focus > a,.slideout-navigation.main-navigation .main-nav ul ul li.sfHover > a' );
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):hover > a, .slideout-navigation.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):focus > a, .slideout-navigation.main-navigation .main-nav ul ul li.sfHover:not([class*="current-menu-"]) > a' );
|
||||
$css->add_property( 'color', esc_attr( $settings['slideout_submenu_text_hover_color'] ) );
|
||||
$css->add_property( 'background-color', esc_attr( $settings['slideout_submenu_background_hover_color'] ) );
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li[class*="current-menu-"] > a, .slideout-navigation.main-navigation .main-nav ul li[class*="current-menu-"] > a:hover,.slideout-navigation.main-navigation .main-nav ul li[class*="current-menu-"].sfHover > a' );
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul li[class*="current-menu-"] > a' );
|
||||
$css->add_property( 'color', esc_attr( $settings['slideout_text_current_color'] ) );
|
||||
$css->add_property( 'background-color', esc_attr( $settings['slideout_background_current_color'] ) );
|
||||
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li[class*="current-menu-"] > a,.slideout-navigation.main-navigation .main-nav ul ul li[class*="current-menu-"] > a:hover,.slideout-navigation.main-navigation .main-nav ul ul li[class*="current-menu-"].sfHover > a' );
|
||||
$css->set_selector( '.slideout-navigation.main-navigation .main-nav ul ul li[class*="current-menu-"] > a' );
|
||||
$css->add_property( 'color', esc_attr( $settings['slideout_submenu_text_current_color'] ) );
|
||||
$css->add_property( 'background-color', esc_attr( $settings['slideout_submenu_background_current_color'] ) );
|
||||
|
||||
@ -1719,7 +1773,9 @@ function generate_do_nav_branding_css() {
|
||||
$css->stop_media_query();
|
||||
}
|
||||
|
||||
if ( ! function_exists( 'generate_typography_premium_css' ) ) {
|
||||
$is_using_dynamic_typography = function_exists( 'generate_is_using_dynamic_typography' ) && generate_is_using_dynamic_typography();
|
||||
|
||||
if ( ! function_exists( 'generate_typography_premium_css' ) && ! $is_using_dynamic_typography ) {
|
||||
$css->set_selector( '.navigation-branding .main-title' );
|
||||
$css->add_property( 'font-size', '25px' );
|
||||
$css->add_property( 'font-weight', 'bold' );
|
||||
@ -2009,15 +2065,14 @@ function generate_do_navigation_branding() {
|
||||
|
||||
if ( '' !== $retina_logo_url ) {
|
||||
$attr['srcset'] = $logo_url . ' 1x, ' . $retina_logo_url . ' 2x';
|
||||
}
|
||||
|
||||
// Add dimensions to image if retina is set. This fixes a container width bug in Firefox.
|
||||
if ( function_exists( 'the_custom_logo' ) && get_theme_mod( 'custom_logo' ) ) {
|
||||
$data = wp_get_attachment_metadata( get_theme_mod( 'custom_logo' ) );
|
||||
if ( function_exists( 'the_custom_logo' ) && get_theme_mod( 'custom_logo' ) ) {
|
||||
$data = wp_get_attachment_metadata( get_theme_mod( 'custom_logo' ) );
|
||||
|
||||
if ( ! empty( $data ) ) {
|
||||
$attr['width'] = $data['width'];
|
||||
$attr['height'] = $data['height'];
|
||||
}
|
||||
if ( ! empty( $data ) ) {
|
||||
$attr['width'] = $data['width'];
|
||||
$attr['height'] = $data['height'];
|
||||
}
|
||||
}
|
||||
|
||||
@ -2193,3 +2248,44 @@ function generate_set_not_mobile_menu_breakpoint( $breakpoint ) {
|
||||
|
||||
return $breakpoint;
|
||||
}
|
||||
|
||||
add_filter( 'generate_has_active_menu', 'generate_menu_plus_set_active_menu' );
|
||||
/**
|
||||
* Tell GP about our active menus.
|
||||
*
|
||||
* @since 2.1.0
|
||||
* @param boolean $has_active_menu Whether we have an active menu.
|
||||
*/
|
||||
function generate_menu_plus_set_active_menu( $has_active_menu ) {
|
||||
$settings = wp_parse_args(
|
||||
get_option( 'generate_menu_plus_settings', array() ),
|
||||
generate_menu_plus_get_defaults()
|
||||
);
|
||||
|
||||
if ( 'disable' !== $settings['mobile_header'] || 'false' !== $settings['slideout_menu'] ) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return $has_active_menu;
|
||||
}
|
||||
|
||||
add_filter( 'generate_typography_css_selector', 'generate_menu_plus_typography_selectors' );
|
||||
/**
|
||||
* Add the Menu Plus typography CSS selectors.
|
||||
*
|
||||
* @since 2.1.0
|
||||
* @param string $selector The selector we're targeting.
|
||||
*/
|
||||
function generate_menu_plus_typography_selectors( $selector ) {
|
||||
switch ( $selector ) {
|
||||
case 'off-canvas-panel-menu-items':
|
||||
$selector = '.slideout-navigation.main-navigation .main-nav ul li a';
|
||||
break;
|
||||
|
||||
case 'off-canvas-panel-sub-menu-items':
|
||||
$selector = '.slideout-navigation.main-navigation .main-nav ul ul li a';
|
||||
break;
|
||||
}
|
||||
|
||||
return $selector;
|
||||
}
|
||||
|
Reference in New Issue
Block a user