/** * Checks the settings for the images and background colors for each image * If any of these value are set the appropriate CSS is output * * @since 1.0 */ function altitude_css() { $handle = defined('CHILD_THEME_NAME') && CHILD_THEME_NAME ? sanitize_title_with_dashes(CHILD_THEME_NAME) : 'child-theme'; $color = get_theme_mod('altitude_accent_color', altitude_customizer_get_default_accent_color()); $opts = apply_filters('altitude_images', array('1', '3', '5', '7')); $settings = array(); foreach ($opts as $opt) { $settings[$opt]['image'] = preg_replace('/^https?:/', '', get_option($opt . '-altitude-image', sprintf('%s/images/bg-%s.jpg', get_stylesheet_directory_uri(), $opt))); } $css = ''; foreach ($settings as $section => $value) { $background = $value['image'] ? sprintf('background-image: url(%s);', $value['image']) : ''; if (is_front_page()) { $css .= !empty($section) && !empty($background) ? sprintf('.front-page-%s { %s }', $section, $background) : ''; } } $css .= altitude_customizer_get_default_accent_color() !== $color ? sprintf(' a, .entry-title a:hover, .image-section a:hover, .image-section .featured-content .entry-title a:hover, .site-footer a:hover { color: %1$s; } button, input[type="button"], input[type="reset"], input[type="submit"], .archive-pagination li a:hover, .archive-pagination .active a, .button, .footer-widgets, .widget .button { background-color: %1$s; } button, input[type="button"], input[type="reset"], input[type="submit"], .button, .front-page input:focus, .front-page textarea:focus, .widget .button { border-color: %1$s; } ', $color) : ''; if ($css) { wp_add_inline_style($handle, $css); } }
public function __construct($manager, $id, $args) { $this->statuses = array('' => __('No Image', 'altitude')); parent::__construct($manager, $id, $args); $this->add_tab('upload-new', __('Upload New', 'altitude'), array($this, 'tab_upload_new')); $this->add_tab('uploaded', __('Uploaded', 'altitude'), array($this, 'tab_uploaded')); if ($this->setting->default) { $this->add_tab('default', __('Default', 'altitude'), array($this, 'tab_default_background')); } // Early priority to occur before $this->manager->prepare_controls(); add_action('customize_controls_init', array($this, 'prepare_control'), 5); } /** * @since 3.4.0 * @uses WP_Customize_Image_Control::print_tab_image() */ public function tab_default_background() { $this->print_tab_image($this->setting->default); } } global $wp_customize; $images = apply_filters('altitude_images', array('1', '3', '5', '7')); $wp_customize->add_section('altitude-settings', array('description' => __('Use the included default images or personalize your site by uploading your own images.<br /><br />The default images are <strong>1600 pixels wide and 1050 pixels tall</strong>.', 'altitude'), 'title' => __('Front Page Background Images', 'altitude'), 'priority' => 35)); foreach ($images as $image) { $wp_customize->add_setting($image . '-altitude-image', array('default' => sprintf('%s/images/bg-%s.jpg', get_stylesheet_directory_uri(), $image), 'type' => 'option')); $wp_customize->add_control(new Child_Altitude_Image_Control($wp_customize, $image . '-altitude-image', array('label' => sprintf(__('Featured Section %s Image:', 'altitude'), $image), 'section' => 'altitude-settings', 'settings' => $image . '-altitude-image', 'priority' => $image + 1))); } $wp_customize->add_setting('altitude_accent_color', array('default' => altitude_customizer_get_default_accent_color())); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'altitude_accent_color', array('description' => __('Change the default accent color for links, buttons, and more.', 'altitude'), 'label' => __('Accent Color', 'altitude'), 'section' => 'colors', 'settings' => 'altitude_accent_color'))); }
public function __construct($manager, $id, $args) { $this->statuses = array('' => __('No Image', 'altitude')); parent::__construct($manager, $id, $args); $this->add_tab('upload-new', __('Upload New', 'altitude'), array($this, 'tab_upload_new')); $this->add_tab('uploaded', __('Uploaded', 'altitude'), array($this, 'tab_uploaded')); if ($this->setting->default) { $this->add_tab('default', __('Default', 'altitude'), array($this, 'tab_default_background')); } // Early priority to occur before $this->manager->prepare_controls(); add_action('customize_controls_init', array($this, 'prepare_control'), 5); } /** * @since 3.4.0 * @uses WP_Customize_Image_Control::print_tab_image() */ public function tab_default_background() { $this->print_tab_image($this->setting->default); } } global $wp_customize; $images = apply_filters('altitude_images', array('1', '3', '5', '7')); $wp_customize->add_section('altitude-settings', array('description' => __('Use the included default images or personalize your site by uploading your own images.<br /><br />The default images are <strong>1600 pixels wide and 1050 pixels tall</strong>.', 'altitude'), 'title' => __('Front Page Background Images', 'altitude'), 'priority' => 35)); foreach ($images as $image) { $wp_customize->add_setting($image . '-altitude-image', array('default' => sprintf('%s/images/bg-%s.jpg', get_stylesheet_directory_uri(), $image), 'type' => 'option')); $wp_customize->add_control(new Child_Altitude_Image_Control($wp_customize, $image . '-altitude-image', array('label' => sprintf(__('Featured Section %s Image:', 'altitude'), $image), 'section' => 'altitude-settings', 'settings' => $image . '-altitude-image', 'priority' => $image + 1))); } $wp_customize->add_setting('altitude_accent_color', array('default' => altitude_customizer_get_default_accent_color(), 'sanitize_callback' => 'sanitize_hex_color')); $wp_customize->add_control(new WP_Customize_Color_Control($wp_customize, 'altitude_accent_color', array('description' => __('Change the default accent color for links, buttons, and more.', 'altitude'), 'label' => __('Accent Color', 'altitude'), 'section' => 'colors', 'settings' => 'altitude_accent_color'))); }