<?php /** * The Sidebar containing the main widget areas. * * @package GeneratePress */ $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); $navigation_active = false; // If the navigation is set in the sidebar, set variable to true if ('nav-right-sidebar' == $generate_settings['nav_position_setting']) { $navigation_active = true; } // If the secondary navigation is set in the sidebar, set variable to true if (function_exists('generate_secondary_nav_get_defaults')) { $secondary_nav = wp_parse_args(get_option('generate_secondary_nav_settings', array()), generate_secondary_nav_get_defaults()); if ('secondary-nav-right-sidebar' == $secondary_nav['secondary_nav_position_setting']) { $navigation_active = true; } } ?> <div id="right-sidebar" itemtype="http://schema.org/WPSideBar" itemscope="itemscope" role="complementary" <?php generate_right_sidebar_class(); ?> > <div class="inside-right-sidebar"> <?php do_action('generate_before_right_sidebar_content'); ?> <?php if (!dynamic_sidebar('sidebar-1')) {
function generate_footer_classes($classes) { $classes[] = 'site-footer'; // Get theme options $generate_settings = get_option('generate_settings', generate_get_defaults()); $footer_layout = $generate_settings['footer_layout_setting']; if ($footer_layout == 'contained-footer') { $classes[] = 'grid-container'; $classes[] = 'grid-parent'; } return $classes; }
function generate_smart_content_width() { global $content_width, $post; // Get Customizer options $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); // Get sidebar widths $right_sidebar_width = apply_filters('generate_right_sidebar_width', '25'); $left_sidebar_width = apply_filters('generate_left_sidebar_width', '25'); // Get the layout $layout = generate_get_layout(); // Find the real content width if ('left-sidebar' == $layout) { // If left sidebar is present $content_width = $generate_settings['container_width'] * ((100 - $left_sidebar_width) / 100); } elseif ('right-sidebar' == $layout) { // If right sidebar is present $content_width = $generate_settings['container_width'] * ((100 - $right_sidebar_width) / 100); } elseif ('no-sidebar' == $layout) { // If no sidebars are present $content_width = $generate_settings['container_width']; } else { // If both sidebars are present $content_width = $generate_settings['container_width'] * ((100 - ($left_sidebar_width + $right_sidebar_width)) / 100); } }
/** * Menu fallback. * * @param array $args * @return string * @since 1.1.4 */ function generate_menu_fallback($args) { $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); ?> <div class="main-nav"> <ul <?php generate_menu_class(); ?> > <?php wp_list_pages('sort_column=menu_order&title_li='); if ('enable' == $generate_settings['nav_search']) { echo '<li class="search-item" title="' . _x('Search', 'submit button', 'generate') . '"><a href="#"><i class="fa fa-search"></i></a></li>'; } ?> </ul> </div><!-- .main-nav --> <?php }
function generate_customize_register($wp_customize) { $defaults = generate_get_defaults(); // Load custom controls require_once GENERATE_DIR . '/inc/controls.php'; // $wp_customize->get_setting( 'blogname' )->transport = 'postMessage'; // $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; // $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; // Change title tagline title to Setup $wp_customize->get_section('title_tagline')->title = __('Header', 'generate'); $wp_customize->get_control('blogdescription')->priority = 3; $wp_customize->get_control('blogname')->priority = 1; $wp_customize->get_section('static_front_page')->title = __('Front Page', 'generate'); $wp_customize->get_section('static_front_page')->priority = 10; $wp_customize->remove_section('background_image'); $wp_customize->remove_section('colors'); //$wp_customize->remove_section('static_front_page'); $wp_customize->remove_section('nav'); // Remove title $wp_customize->add_setting('generate_title'); $wp_customize->add_control('generate_title', array('type' => 'checkbox', 'label' => __('Hide site title', 'generate'), 'section' => 'title_tagline', 'priority' => 2)); $wp_customize->add_setting('generate_tagline'); $wp_customize->add_control('generate_tagline', array('type' => 'checkbox', 'label' => __('Hide site tagline', 'generate'), 'section' => 'title_tagline', 'priority' => 4)); $wp_customize->add_setting('generate_logo'); $wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'generate_logo', array('label' => __('Logo', 'generate'), 'section' => 'title_tagline', 'settings' => 'generate_logo'))); $wp_customize->add_section('body_section', array('title' => __('Base Colors', 'generate'), 'capability' => 'edit_theme_options', 'priority' => 40)); // Add color settings $body_colors = array(); $body_colors[] = array('slug' => 'background_color', 'default' => $defaults['background_color'], 'label' => __('Background Color', 'generate')); $body_colors[] = array('slug' => 'text_color', 'default' => $defaults['text_color'], 'label' => __('Text Color', 'generate')); $body_colors[] = array('slug' => 'link_color', 'default' => $defaults['link_color'], 'label' => __('Link Color', 'generate')); $body_colors[] = array('slug' => 'link_color_hover', 'default' => $defaults['link_color_hover'], 'label' => __('Link Color Hover', 'generate')); $body_colors[] = array('slug' => 'link_color_visited', 'default' => $defaults['link_color_visited'], 'label' => __('Link Color Visited', 'generate')); foreach ($body_colors as $color) { // SETTINGS $wp_customize->add_setting('generate_settings[' . $color['slug'] . ']', array('default' => $color['default'], 'type' => 'option', 'capability' => 'edit_theme_options')); // CONTROLS $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, $color['slug'], array('label' => $color['label'], 'section' => 'body_section', 'settings' => 'generate_settings[' . $color['slug'] . ']'))); } // Add Layout section $wp_customize->add_section('layout_section', array('title' => __('Layout', 'generate'), 'capability' => 'edit_theme_options', 'description' => __('Allows you to edit your theme\'s layout.', 'generate'), 'priority' => 30)); // Container width $wp_customize->add_setting('generate_settings[container_width]', array('default' => $defaults['container_width'], 'type' => 'option')); $wp_customize->add_control(new Generate_Customize_Width_Slider_Control($wp_customize, 'generate_settings[container_width]', array('label' => __('Container Width', 'generate'), 'section' => 'layout_section', 'settings' => 'generate_settings[container_width]', 'priority' => 0))); // Add Header Layout setting $wp_customize->add_setting('generate_settings[header_layout_setting]', array('default' => $defaults['header_layout_setting'], 'type' => 'option')); // Add Header Layout control $wp_customize->add_control('header_layout_control', array('type' => 'select', 'label' => __('Header Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('fluid-header' => __('Fluid / Full Width', 'generate'), 'contained-header' => __('Contained', 'generate')), 'settings' => 'generate_settings[header_layout_setting]', 'priority' => 5)); $wp_customize->add_setting('generate_settings[center_header]', array('default' => $defaults['center_header'], 'type' => 'option')); $wp_customize->add_control('generate_settings[center_header]', array('type' => 'checkbox', 'label' => __('Center header', 'generate'), 'section' => 'layout_section', 'priority' => 10)); // Add navigation setting $wp_customize->add_setting('generate_settings[nav_layout_setting]', array('default' => $defaults['nav_layout_setting'], 'type' => 'option')); // Add navigation control $wp_customize->add_control('nav_layout_control', array('type' => 'select', 'label' => __('Navigation Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('fluid-nav' => __('Fluid / Full Width', 'generate'), 'contained-nav' => __('Contained', 'generate')), 'settings' => 'generate_settings[nav_layout_setting]', 'priority' => 15)); // Add navigation setting $wp_customize->add_setting('generate_settings[nav_position_setting]', array('default' => $defaults['nav_position_setting'], 'type' => 'option')); // Add navigation control $wp_customize->add_control('nav_position_control', array('type' => 'select', 'label' => __('Navigation Position', 'generate'), 'section' => 'layout_section', 'choices' => array('nav-below-header' => __('Below Header', 'generate'), 'nav-above-header' => __('Above Header', 'generate'), 'nav-float-right' => __('Float Right', 'generate'), 'nav-left-sidebar' => __('Left Sidebar', 'generate'), 'nav-right-sidebar' => __('Right Sidebar', 'generate'), '' => __('No Navigation', 'generate')), 'settings' => 'generate_settings[nav_position_setting]', 'priority' => 20)); $wp_customize->add_setting('generate_settings[center_nav]', array('default' => $defaults['center_nav'], 'type' => 'option')); $wp_customize->add_control('generate_settings[center_nav]', array('type' => 'checkbox', 'label' => __('Center navigation', 'generate'), 'section' => 'layout_section', 'priority' => 22)); // Add content setting $wp_customize->add_setting('generate_settings[content_layout_setting]', array('default' => $defaults['content_layout_setting'], 'type' => 'option')); // Add content control $wp_customize->add_control('content_layout_control', array('type' => 'select', 'label' => __('Content Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('separate-containers' => __('Separate Containers', 'generate'), 'one-container' => __('One Container', 'generate')), 'settings' => 'generate_settings[content_layout_setting]', 'priority' => 25)); // Add Layout setting $wp_customize->add_setting('generate_settings[layout_setting]', array('default' => $defaults['layout_setting'], 'type' => 'option')); // Add Layout control $wp_customize->add_control('layout_control', array('type' => 'select', 'label' => __('Sidebar Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('left-sidebar' => __('Sidebar / Content', 'generate'), 'right-sidebar' => __('Content / Sidebar', 'generate'), 'no-sidebar' => __('Content (no sidebars)', 'generate'), 'both-sidebars' => __('Sidebar / Content / Sidebar', 'generate'), 'both-left' => __('Sidebar / Sidebar / Content', 'generate'), 'both-right' => __('Content / Sidebar / Sidebar', 'generate')), 'settings' => 'generate_settings[layout_setting]', 'priority' => 30)); // Add Layout setting $wp_customize->add_setting('generate_settings[blog_layout_setting]', array('default' => $defaults['blog_layout_setting'], 'type' => 'option')); // Add Layout control $wp_customize->add_control('blog_layout_control', array('type' => 'select', 'label' => __('Blog Sidebar Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('left-sidebar' => __('Sidebar / Content', 'generate'), 'right-sidebar' => __('Content / Sidebar', 'generate'), 'no-sidebar' => __('Content (no sidebars)', 'generate'), 'both-sidebars' => __('Sidebar / Content / Sidebar', 'generate'), 'both-left' => __('Sidebar / Sidebar / Content', 'generate'), 'both-right' => __('Content / Sidebar / Sidebar', 'generate')), 'settings' => 'generate_settings[blog_layout_setting]', 'priority' => 35)); // Add footer setting $wp_customize->add_setting('generate_settings[footer_layout_setting]', array('default' => $defaults['footer_layout_setting'], 'type' => 'option')); // Add content control $wp_customize->add_control('footer_layout_control', array('type' => 'select', 'label' => __('Footer Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('fluid-footer' => __('Fluid / Full Width', 'generate'), 'contained-footer' => __('Contained', 'generate')), 'settings' => 'generate_settings[footer_layout_setting]', 'priority' => 40)); // Add footer widget setting $wp_customize->add_setting('generate_settings[footer_widget_setting]', array('default' => $defaults['footer_widget_setting'], 'type' => 'option')); // Add footer widget control $wp_customize->add_control('footer_widget_control', array('type' => 'select', 'label' => __('Footer Widgets', 'generate'), 'section' => 'layout_section', 'choices' => array('0' => '0', '1' => '1', '2' => '2', '3' => '3', '4' => '4'), 'settings' => 'generate_settings[footer_widget_setting]', 'priority' => 45)); }
function generate_base_css() { $generate_settings = get_option('generate_settings', generate_get_defaults()); $space = ' '; // Start the magic $visual_css = array('body' => array('background-color' => $generate_settings['background_color'], 'color' => $generate_settings['text_color']), 'a, a:visited' => array('color' => $generate_settings['link_color'], 'text-decoration' => 'none'), 'a:visited' => array('color' => !empty($generate_settings['link_color_visited']) ? $generate_settings['link_color_visited'] : null), 'a:hover' => array('color' => $generate_settings['link_color_hover'], 'text-decoration' => null), 'body .grid-container' => array('max-width' => $generate_settings['container_width'] . 'px'), '.site-header' => array('text-align' => !empty($generate_settings['center_header']) ? 'center' : null), '.nav-below-header .main-navigation, .nav-above-header .main-navigation' => array('text-align' => !empty($generate_settings['center_nav']) ? 'center' : null), '.nav-below-header .main-navigation .menu > li, .nav-below-header .main-navigation .sf-menu > li, .nav-above-header .main-navigation .menu > li, .nav-above-header .main-navigation .sf-menu > li' => array('float' => !empty($generate_settings['center_nav']) ? 'none' : null, 'display' => !empty($generate_settings['center_nav']) ? 'inline-block' : null, 'margin-right' => !empty($generate_settings['center_nav']) ? '-4px' : null, '*display' => !empty($generate_settings['center_nav']) ? 'inline' : null, '*zoom' => !empty($generate_settings['center_nav']) ? '1' : null)); // Output the above CSS $output = ''; foreach ($visual_css as $k => $properties) { if (!count($properties)) { continue; } $temporary_output = $k . ' {'; $elements_added = 0; foreach ($properties as $p => $v) { if (empty($v)) { continue; } $elements_added++; $temporary_output .= $p . ': ' . $v . '; '; } $temporary_output .= "}"; if ($elements_added > 0) { $output .= $temporary_output; } } ?> <!-- Generate CSS --> <style type="text/css"> <?php $output = str_replace(array("\r", "\n"), '', $output); echo $output; do_action('generate_head_css') . '\\n'; ?> </style> <?php }
/** * Build the header * * Wrapping this into a function allows us to customize the order in a child theme * * @since 1.2.9.7 */ function generate_header_items() { $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); // Header widget if (is_active_sidebar('header')) { ?> <div class="header-widget"> <?php dynamic_sidebar('header'); ?> </div> <?php } // Site title and tagline if (empty($generate_settings['hide_title']) || empty($generate_settings['hide_tagline'])) { ?> <div class="site-branding"> <?php if (empty($generate_settings['hide_title'])) { ?> <p class="main-title" itemprop="headline"><a href="<?php echo esc_url(home_url('/')); ?> " title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " rel="home"><?php bloginfo('name'); ?> </a></p> <?php } if (empty($generate_settings['hide_tagline'])) { ?> <p class="site-description"><?php echo html_entity_decode(bloginfo('description')); ?> </p> <?php } ?> </div> <?php } // Site logo if (!empty($generate_settings['logo'])) { ?> <div class="site-logo"> <a href="<?php echo apply_filters('generate_logo_href', esc_url(home_url('/'))); ?> " title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " rel="home"><img class="header-image" src="<?php echo $generate_settings['logo']; ?> " alt="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " /></a> </div> <?php } }
* * Contains the closing of the id=main div and all content after * * @package Generate */ ?> </div><!-- #content --> </div><!-- #page --> <div <?php generate_footer_class(); ?> > <?php global $post; $generate_settings = get_option('generate_settings', generate_get_defaults()); $stored_meta = ''; if (isset($post)) { $stored_meta = get_post_meta($post->ID, '_generate-footer-widget-meta', true); } if ('' !== $stored_meta) { $generate_settings['footer_widget_setting'] = $stored_meta; } if (!empty($generate_settings['footer_widget_setting']) && 0 !== $generate_settings['footer_widget_setting']) { $widget_width = ''; if ($generate_settings['footer_widget_setting'] == 1) { $widget_width = '100'; } if ($generate_settings['footer_widget_setting'] == 2) { $widget_width = '50'; }
/** * Build the header * * Wrapping this into a function allows us to customize the order in a child theme * * @since 1.2.9.7 */ function generate_header_items() { $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); // Get the title and tagline $title = get_bloginfo('title'); $tagline = get_bloginfo('description'); // If the disable title checkbox is checked, or the title field is empty, return true $disable_title = '1' == $generate_settings['hide_title'] || '' == $title ? true : false; // If the disable tagline checkbox is checked, or the tagline field is empty, return true $disable_tagline = '1' == $generate_settings['hide_tagline'] || '' == $tagline ? true : false; // Header widget if (is_active_sidebar('header')) { ?> <div class="header-widget"> <?php dynamic_sidebar('header'); ?> </div> <?php } // Site title and tagline if (false == $disable_title || false == $disable_tagline) { ?> <div class="site-branding"> <?php if (false == $disable_title) { ?> <p class="main-title" itemprop="headline"><a href="<?php echo esc_url(home_url('/')); ?> " title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " rel="home"><?php bloginfo('name'); ?> </a></p> <?php } if (false == $disable_tagline) { ?> <p class="site-description"><?php echo html_entity_decode(bloginfo('description')); ?> </p> <?php } ?> </div> <?php } // Site logo if (!empty($generate_settings['logo'])) { ?> <div class="site-logo"> <a href="<?php echo apply_filters('generate_logo_href', esc_url(home_url('/'))); ?> " title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " rel="home"><img class="header-image" src="<?php echo esc_url($generate_settings['logo']); ?> " alt="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " title="<?php echo esc_attr(get_bloginfo('name', 'display')); ?> " /></a> </div> <?php } }
/** * Figure out if we should show the blog excerpts or full posts * @since 1.3.15 */ function generate_show_excerpt() { // Get current post global $post; // Get Customizer settings $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); // Check to see if the more tag is being used $more_tag = apply_filters('generate_more_tag', @strpos($post->post_content, '<!--more-->')); // Check the post format $format = false !== get_post_format() ? get_post_format() : 'standard'; // Get the excerpt setting from the Customizer $show_excerpt = 'excerpt' == $generate_settings['post_content'] ? true : false; // If our post format isn't standard, show the full content $show_excerpt = 'standard' !== $format ? false : $show_excerpt; // If the more tag is found, show the full content $show_excerpt = $more_tag ? false : $show_excerpt; // If we're on a search results page, show the excerpt $show_excerpt = is_search() ? true : $show_excerpt; // Return our value return apply_filters('generate_show_excerpt', $show_excerpt); }
function generate_customize_register($wp_customize) { $defaults = generate_get_defaults(); // Load custom controls require_once get_template_directory() . '/inc/controls.php'; require_once get_template_directory() . '/inc/sanitize.php'; $wp_customize->get_section('title_tagline')->title = __('Site Identity', 'generate'); $wp_customize->get_control('blogdescription')->priority = 3; $wp_customize->get_setting('blogdescription')->transport = 'postMessage'; $wp_customize->get_control('blogname')->priority = 1; $wp_customize->get_setting('blogname')->transport = 'postMessage'; $static_front_page = wp_list_pages(array('echo' => false)); if (!empty($static_front_page)) { $wp_customize->get_section('static_front_page')->title = __('Set Front Page', 'generate'); $wp_customize->get_section('static_front_page')->priority = 10; } $wp_customize->remove_section('background_image'); $wp_customize->remove_section('colors'); // Remove title $wp_customize->add_setting('generate_settings[hide_title]', array('default' => $defaults['hide_title'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_checkbox')); $wp_customize->add_control('generate_settings[hide_title]', array('type' => 'checkbox', 'label' => __('Hide site title', 'generate'), 'section' => 'title_tagline', 'priority' => 2)); $wp_customize->add_setting('generate_settings[hide_tagline]', array('default' => $defaults['hide_tagline'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_checkbox')); $wp_customize->add_control('generate_settings[hide_tagline]', array('type' => 'checkbox', 'label' => __('Hide site tagline', 'generate'), 'section' => 'title_tagline', 'priority' => 4)); $wp_customize->add_setting('generate_settings[logo]', array('default' => $defaults['logo'], 'type' => 'option', 'sanitize_callback' => 'esc_url_raw')); $wp_customize->add_control(new WP_Customize_Image_Control($wp_customize, 'generate_settings[logo]', array('label' => __('Logo', 'generate'), 'section' => 'title_tagline', 'settings' => 'generate_settings[logo]'))); if (class_exists('WP_Customize_Panel')) { if (!$wp_customize->get_panel('generate_colors_panel')) { $wp_customize->add_panel('generate_colors_panel', array('priority' => 30, 'capability' => 'edit_theme_options', 'theme_supports' => '', 'title' => __('Colors', 'generate'), 'description' => '')); } } $wp_customize->add_section('body_section', array('title' => __('Base Colors', 'generate'), 'capability' => 'edit_theme_options', 'priority' => 30, 'panel' => 'generate_colors_panel')); // Add color settings $body_colors = array(); $body_colors[] = array('slug' => 'background_color', 'default' => $defaults['background_color'], 'label' => __('Background Color', 'generate'), 'transport' => 'postMessage'); $body_colors[] = array('slug' => 'text_color', 'default' => $defaults['text_color'], 'label' => __('Text Color', 'generate'), 'transport' => 'postMessage'); $body_colors[] = array('slug' => 'link_color', 'default' => $defaults['link_color'], 'label' => __('Link Color', 'generate'), 'transport' => 'postMessage'); $body_colors[] = array('slug' => 'link_color_hover', 'default' => $defaults['link_color_hover'], 'label' => __('Link Color Hover', 'generate'), 'transport' => 'refresh'); $body_colors[] = array('slug' => 'link_color_visited', 'default' => $defaults['link_color_visited'], 'label' => __('Link Color Visited', 'generate'), 'transport' => 'refresh'); foreach ($body_colors as $color) { // SETTINGS $wp_customize->add_setting('generate_settings[' . $color['slug'] . ']', array('default' => $color['default'], 'type' => 'option', 'capability' => 'edit_theme_options', 'sanitize_callback' => 'generate_sanitize_hex_color', 'transport' => $color['transport'])); // CONTROLS $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, $color['slug'], array('label' => $color['label'], 'section' => 'body_section', 'settings' => 'generate_settings[' . $color['slug'] . ']'))); } if (!function_exists('generate_colors_customize_register') && !defined('GP_PREMIUM_VERSION')) { $wp_customize->add_control(new Generate_Customize_Misc_Control($wp_customize, 'colors_get_addon_desc', array('section' => 'body_section', 'type' => 'addon', 'label' => __('More Settings', 'generate'), 'url' => 'http://www.generatepress.com/downloads/generate-colors/', 'description' => sprintf(__('Looking to add more color settings?<br /> %s.', 'generate'), sprintf('<a href="%1$s" target="_blank">%2$s</a>', esc_url('http://www.generatepress.com/downloads/generate-colors/'), __('Check out Generate Colors', 'generate'))), 'priority' => 30))); } // Add Layout section $wp_customize->add_section('layout_section', array('title' => __('Layout', 'generate'), 'capability' => 'edit_theme_options', 'description' => __('Allows you to edit your theme\'s layout.', 'generate'), 'priority' => 25)); // Container width $wp_customize->add_setting('generate_settings[container_width]', array('default' => $defaults['container_width'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_integer', 'transport' => 'postMessage')); $wp_customize->add_control(new Generate_Customize_Width_Slider_Control($wp_customize, 'generate_settings[container_width]', array('label' => __('Container Width', 'generate'), 'section' => 'layout_section', 'settings' => 'generate_settings[container_width]', 'priority' => 0))); // Add Header Layout setting $wp_customize->add_setting('generate_settings[header_layout_setting]', array('default' => $defaults['header_layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_header_layout')); // Add Header Layout control $wp_customize->add_control('header_layout_control', array('type' => 'select', 'label' => __('Header Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('fluid-header' => __('Fluid / Full Width', 'generate'), 'contained-header' => __('Contained', 'generate')), 'settings' => 'generate_settings[header_layout_setting]', 'priority' => 5)); // Add navigation setting $wp_customize->add_setting('generate_settings[header_alignment_setting]', array('default' => $defaults['header_alignment_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_alignment')); // Add navigation control $wp_customize->add_control('header_alignment_control', array('type' => 'select', 'label' => __('Header Alignment', 'generate'), 'section' => 'layout_section', 'choices' => array('left' => __('Left', 'generate'), 'center' => __('Center', 'generate'), 'right' => __('Right', 'generate')), 'settings' => 'generate_settings[header_alignment_setting]', 'priority' => 10)); // Add navigation setting $wp_customize->add_setting('generate_settings[nav_layout_setting]', array('default' => $defaults['nav_layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_nav_layout')); // Add navigation control $wp_customize->add_control('nav_layout_control', array('type' => 'select', 'label' => __('Navigation Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('fluid-nav' => __('Fluid / Full Width', 'generate'), 'contained-nav' => __('Contained', 'generate')), 'settings' => 'generate_settings[nav_layout_setting]', 'priority' => 15)); // Add navigation setting $wp_customize->add_setting('generate_settings[nav_position_setting]', array('default' => $defaults['nav_position_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_nav_position')); // Add navigation control $wp_customize->add_control('nav_position_control', array('type' => 'select', 'label' => __('Navigation Position', 'generate'), 'section' => 'layout_section', 'choices' => array('nav-below-header' => __('Below Header', 'generate'), 'nav-above-header' => __('Above Header', 'generate'), 'nav-float-right' => __('Float Right', 'generate'), 'nav-left-sidebar' => __('Left Sidebar', 'generate'), 'nav-right-sidebar' => __('Right Sidebar', 'generate'), '' => __('No Navigation', 'generate')), 'settings' => 'generate_settings[nav_position_setting]', 'priority' => 20)); // Add navigation setting $wp_customize->add_setting('generate_settings[nav_alignment_setting]', array('default' => $defaults['nav_alignment_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_alignment')); // Add navigation control $wp_customize->add_control('nav_alignment_control', array('type' => 'select', 'label' => __('Navigation Alignment', 'generate'), 'section' => 'layout_section', 'choices' => array('left' => __('Left', 'generate'), 'center' => __('Center', 'generate'), 'right' => __('Right', 'generate')), 'settings' => 'generate_settings[nav_alignment_setting]', 'priority' => 22)); // Add navigation setting $wp_customize->add_setting('generate_settings[nav_search]', array('default' => $defaults['nav_search'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_nav_search')); // Add navigation control $wp_customize->add_control('nav_search_control', array('type' => 'select', 'label' => __('Navigation Search', 'generate'), 'section' => 'layout_section', 'choices' => array('enable' => __('Enabled', 'generate'), 'disable' => __('Disabled', 'generate')), 'settings' => 'generate_settings[nav_search]', 'priority' => 23)); // Add content setting $wp_customize->add_setting('generate_settings[content_layout_setting]', array('default' => $defaults['content_layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_content_layout')); // Add content control $wp_customize->add_control('content_layout_control', array('type' => 'select', 'label' => __('Content Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('separate-containers' => __('Separate Containers', 'generate'), 'one-container' => __('One Container', 'generate')), 'settings' => 'generate_settings[content_layout_setting]', 'priority' => 25)); // Add Layout setting $wp_customize->add_setting('generate_settings[layout_setting]', array('default' => $defaults['layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_sidebar_layout')); // Add Layout control $wp_customize->add_control('layout_control', array('type' => 'select', 'label' => __('Sidebar Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('left-sidebar' => __('Sidebar / Content', 'generate'), 'right-sidebar' => __('Content / Sidebar', 'generate'), 'no-sidebar' => __('Content (no sidebars)', 'generate'), 'both-sidebars' => __('Sidebar / Content / Sidebar', 'generate'), 'both-left' => __('Sidebar / Sidebar / Content', 'generate'), 'both-right' => __('Content / Sidebar / Sidebar', 'generate')), 'settings' => 'generate_settings[layout_setting]', 'priority' => 30)); // Add Layout setting $wp_customize->add_setting('generate_settings[blog_layout_setting]', array('default' => $defaults['blog_layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_sidebar_layout')); // Add Layout control $wp_customize->add_control('blog_layout_control', array('type' => 'select', 'label' => __('Blog Sidebar Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('left-sidebar' => __('Sidebar / Content', 'generate'), 'right-sidebar' => __('Content / Sidebar', 'generate'), 'no-sidebar' => __('Content (no sidebars)', 'generate'), 'both-sidebars' => __('Sidebar / Content / Sidebar', 'generate'), 'both-left' => __('Sidebar / Sidebar / Content', 'generate'), 'both-right' => __('Content / Sidebar / Sidebar', 'generate')), 'settings' => 'generate_settings[blog_layout_setting]', 'priority' => 35)); // Add Layout setting $wp_customize->add_setting('generate_settings[single_layout_setting]', array('default' => $defaults['single_layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_sidebar_layout')); // Add Layout control $wp_customize->add_control('single_layout_control', array('type' => 'select', 'label' => __('Single Post Sidebar Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('left-sidebar' => __('Sidebar / Content', 'generate'), 'right-sidebar' => __('Content / Sidebar', 'generate'), 'no-sidebar' => __('Content (no sidebars)', 'generate'), 'both-sidebars' => __('Sidebar / Content / Sidebar', 'generate'), 'both-left' => __('Sidebar / Sidebar / Content', 'generate'), 'both-right' => __('Content / Sidebar / Sidebar', 'generate')), 'settings' => 'generate_settings[single_layout_setting]', 'priority' => 36)); // Add footer setting $wp_customize->add_setting('generate_settings[footer_layout_setting]', array('default' => $defaults['footer_layout_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_footer_layout')); // Add content control $wp_customize->add_control('footer_layout_control', array('type' => 'select', 'label' => __('Footer Layout', 'generate'), 'section' => 'layout_section', 'choices' => array('fluid-footer' => __('Fluid / Full Width', 'generate'), 'contained-footer' => __('Contained', 'generate')), 'settings' => 'generate_settings[footer_layout_setting]', 'priority' => 40)); // Add footer widget setting $wp_customize->add_setting('generate_settings[footer_widget_setting]', array('default' => $defaults['footer_widget_setting'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_footer_widgets')); // Add footer widget control $wp_customize->add_control('footer_widget_control', array('type' => 'select', 'label' => __('Footer Widgets', 'generate'), 'section' => 'layout_section', 'choices' => array('0' => '0', '1' => '1', '2' => '2', '3' => '3', '4' => '4', '5' => '5'), 'settings' => 'generate_settings[footer_widget_setting]', 'priority' => 45)); // Add Layout section $wp_customize->add_section('blog_section', array('title' => __('Blog', 'generate'), 'capability' => 'edit_theme_options', 'description' => '', 'priority' => 100)); // Add Layout setting $wp_customize->add_setting('generate_settings[post_content]', array('default' => $defaults['post_content'], 'type' => 'option', 'sanitize_callback' => 'generate_sanitize_blog_excerpt')); // Add Layout control $wp_customize->add_control('blog_content_control', array('type' => 'select', 'label' => __('Blog Post Content', 'generate'), 'section' => 'blog_section', 'choices' => array('full' => __('Show full post', 'generate'), 'excerpt' => __('Show excerpt', 'generate')), 'settings' => 'generate_settings[post_content]', 'priority' => 10)); if (!function_exists('generate_blog_customize_register') && !defined('GP_PREMIUM_VERSION')) { $wp_customize->add_control(new Generate_Customize_Misc_Control($wp_customize, 'blog_get_addon_desc', array('section' => 'blog_section', 'type' => 'addon', 'label' => __('More Settings', 'generate'), 'url' => 'http://www.generatepress.com/downloads/generate-blog/', 'description' => sprintf(__('Looking to add more blog settings?<br /> %s.', 'generate'), sprintf('<a href="%1$s" target="_blank">%2$s</a>', esc_url('http://www.generatepress.com/downloads/generate-blog/'), __('Check out Generate Blog', 'generate'))), 'priority' => 30))); } }
/** * Add dynamic CSS * @since 0.4 */ function mantle_custom_css() { $generate_settings = wp_parse_args(get_option('generate_settings', array()), generate_get_defaults()); if (function_exists('generate_spacing_get_defaults')) { $spacing_settings = wp_parse_args(get_option('generate_spacing_settings', array()), generate_spacing_get_defaults()); } if (function_exists('generate_blog_get_defaults')) { $blog_settings = wp_parse_args(get_option('generate_blog_settings', array()), generate_blog_get_defaults()); } if (function_exists('generate_spacing_get_defaults')) { $top_padding = $spacing_settings['content_top']; $right_padding = $spacing_settings['content_right']; $bottom_padding = $spacing_settings['content_bottom']; $left_padding = $spacing_settings['content_left']; $menu_height = $spacing_settings['menu_item_height']; } else { $top_padding = 40; $right_padding = 40; $bottom_padding = 40; $left_padding = 40; $menu_height = 50; } $return = ''; if (function_exists('generate_blog_get_defaults')) { if ('' == $blog_settings['post_image_position']) { $return .= '.separate-containers .post-image, .separate-containers .inside-article .page-header-image-single, .separate-containers .inside-article .page-header-image, .separate-containers .inside-article .page-header-content-single, .no-sidebar .inside-article .page-header-image-single, .no-sidebar .inside-article .page-header-image, article .inside-article .page-header-post-image { margin: ' . $bottom_padding . 'px -' . $right_padding . 'px ' . $bottom_padding . 'px -' . $left_padding . 'px }'; } else { $return .= '.separate-containers .post-image, .separate-containers .inside-article .page-header-image-single, .separate-containers .inside-article .page-header-image, .separate-containers .inside-article .page-header-content-single, .no-sidebar .inside-article .page-header-image-single, .no-sidebar .inside-article .page-header-image, article .inside-article .page-header-post-image { margin: -' . $top_padding . 'px -' . $right_padding . 'px ' . $bottom_padding . 'px -' . $left_padding . 'px }'; } } else { $return .= '.separate-containers .post-image, .separate-containers .inside-article .page-header-image-single, .separate-containers .inside-article .page-header-image, .separate-containers .inside-article .page-header-content-single, .no-sidebar .inside-article .page-header-image-single, .no-sidebar .inside-article .page-header-image, article .inside-article .page-header-post-image { margin: -' . $top_padding . 'px -' . $right_padding . 'px ' . $bottom_padding . 'px -' . $left_padding . 'px }'; } $return .= '.nav-above-header {padding-top: ' . $menu_height . 'px}'; $return .= '.stickynav.nav-below-header .site-header {margin-bottom: ' . $menu_height . 'px}'; if ('contained-nav' == $generate_settings['nav_layout_setting']) { $return .= '@media screen and (min-width: 768px) { body.stickynav.nav-below-header #site-navigation, body.nav-above-header #site-navigation, body.stickynav.nav-above-header #site-navigation { left: 50%; width: 100%; max-width: ' . $generate_settings['container_width'] . 'px; margin-left: -' . $generate_settings['container_width'] / 2 . 'px; } }'; } return $return; }