diff -r cf61fcea0001 -r c7c34916027a wp/wp-content/themes/twentyfifteen/inc/customizer.php --- a/wp/wp-content/themes/twentyfifteen/inc/customizer.php Mon Oct 14 17:39:30 2019 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,773 +0,0 @@ -get_setting( 'blogname' )->transport = 'postMessage'; - $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; - - if ( isset( $wp_customize->selective_refresh ) ) { - $wp_customize->selective_refresh->add_partial( 'blogname', array( - 'selector' => '.site-title a', - 'container_inclusive' => false, - 'render_callback' => 'twentyfifteen_customize_partial_blogname', - ) ); - $wp_customize->selective_refresh->add_partial( 'blogdescription', array( - 'selector' => '.site-description', - 'container_inclusive' => false, - 'render_callback' => 'twentyfifteen_customize_partial_blogdescription', - ) ); - } - - // Add color scheme setting and control. - $wp_customize->add_setting( 'color_scheme', array( - 'default' => 'default', - 'sanitize_callback' => 'twentyfifteen_sanitize_color_scheme', - 'transport' => 'postMessage', - ) ); - - $wp_customize->add_control( 'color_scheme', array( - 'label' => __( 'Base Color Scheme', 'twentyfifteen' ), - 'section' => 'colors', - 'type' => 'select', - 'choices' => twentyfifteen_get_color_scheme_choices(), - 'priority' => 1, - ) ); - - // Add custom header and sidebar text color setting and control. - $wp_customize->add_setting( 'sidebar_textcolor', array( - 'default' => $color_scheme[4], - 'sanitize_callback' => 'sanitize_hex_color', - 'transport' => 'postMessage', - ) ); - - $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'sidebar_textcolor', array( - 'label' => __( 'Header and Sidebar Text Color', 'twentyfifteen' ), - 'description' => __( 'Applied to the header on small screens and the sidebar on wide screens.', 'twentyfifteen' ), - 'section' => 'colors', - ) ) ); - - // Remove the core header textcolor control, as it shares the sidebar text color. - $wp_customize->remove_control( 'header_textcolor' ); - - // Add custom header and sidebar background color setting and control. - $wp_customize->add_setting( 'header_background_color', array( - 'default' => $color_scheme[1], - 'sanitize_callback' => 'sanitize_hex_color', - 'transport' => 'postMessage', - ) ); - - $wp_customize->add_control( new WP_Customize_Color_Control( $wp_customize, 'header_background_color', array( - 'label' => __( 'Header and Sidebar Background Color', 'twentyfifteen' ), - 'description' => __( 'Applied to the header on small screens and the sidebar on wide screens.', 'twentyfifteen' ), - 'section' => 'colors', - ) ) ); - - // Add an additional description to the header image section. - $wp_customize->get_section( 'header_image' )->description = __( 'Applied to the header on small screens and the sidebar on wide screens.', 'twentyfifteen' ); -} -add_action( 'customize_register', 'twentyfifteen_customize_register', 11 ); - -/** - * Render the site title for the selective refresh partial. - * - * @since Twenty Fifteen 1.5 - * @see twentyfifteen_customize_register() - * - * @return void - */ -function twentyfifteen_customize_partial_blogname() { - bloginfo( 'name' ); -} - -/** - * Render the site tagline for the selective refresh partial. - * - * @since Twenty Fifteen 1.5 - * @see twentyfifteen_customize_register() - * - * @return void - */ -function twentyfifteen_customize_partial_blogdescription() { - bloginfo( 'description' ); -} - -/** - * Register color schemes for Twenty Fifteen. - * - * Can be filtered with {@see 'twentyfifteen_color_schemes'}. - * - * The order of colors in a colors array: - * 1. Main Background Color. - * 2. Sidebar Background Color. - * 3. Box Background Color. - * 4. Main Text and Link Color. - * 5. Sidebar Text and Link Color. - * 6. Meta Box Background Color. - * - * @since Twenty Fifteen 1.0 - * - * @return array An associative array of color scheme options. - */ -function twentyfifteen_get_color_schemes() { - /** - * Filter the color schemes registered for use with Twenty Fifteen. - * - * The default schemes include 'default', 'dark', 'yellow', 'pink', 'purple', and 'blue'. - * - * @since Twenty Fifteen 1.0 - * - * @param array $schemes { - * Associative array of color schemes data. - * - * @type array $slug { - * Associative array of information for setting up the color scheme. - * - * @type string $label Color scheme label. - * @type array $colors HEX codes for default colors prepended with a hash symbol ('#'). - * Colors are defined in the following order: Main background, sidebar - * background, box background, main text and link, sidebar text and link, - * meta box background. - * } - * } - */ - return apply_filters( 'twentyfifteen_color_schemes', array( - 'default' => array( - 'label' => __( 'Default', 'twentyfifteen' ), - 'colors' => array( - '#f1f1f1', - '#ffffff', - '#ffffff', - '#333333', - '#333333', - '#f7f7f7', - ), - ), - 'dark' => array( - 'label' => __( 'Dark', 'twentyfifteen' ), - 'colors' => array( - '#111111', - '#202020', - '#202020', - '#bebebe', - '#bebebe', - '#1b1b1b', - ), - ), - 'yellow' => array( - 'label' => __( 'Yellow', 'twentyfifteen' ), - 'colors' => array( - '#f4ca16', - '#ffdf00', - '#ffffff', - '#111111', - '#111111', - '#f1f1f1', - ), - ), - 'pink' => array( - 'label' => __( 'Pink', 'twentyfifteen' ), - 'colors' => array( - '#ffe5d1', - '#e53b51', - '#ffffff', - '#352712', - '#ffffff', - '#f1f1f1', - ), - ), - 'purple' => array( - 'label' => __( 'Purple', 'twentyfifteen' ), - 'colors' => array( - '#674970', - '#2e2256', - '#ffffff', - '#2e2256', - '#ffffff', - '#f1f1f1', - ), - ), - 'blue' => array( - 'label' => __( 'Blue', 'twentyfifteen' ), - 'colors' => array( - '#e9f2f9', - '#55c3dc', - '#ffffff', - '#22313f', - '#ffffff', - '#f1f1f1', - ), - ), - ) ); -} - -if ( ! function_exists( 'twentyfifteen_get_color_scheme' ) ) : -/** - * Get the current Twenty Fifteen color scheme. - * - * @since Twenty Fifteen 1.0 - * - * @return array An associative array of either the current or default color scheme hex values. - */ -function twentyfifteen_get_color_scheme() { - $color_scheme_option = get_theme_mod( 'color_scheme', 'default' ); - $color_schemes = twentyfifteen_get_color_schemes(); - - if ( array_key_exists( $color_scheme_option, $color_schemes ) ) { - return $color_schemes[ $color_scheme_option ]['colors']; - } - - return $color_schemes['default']['colors']; -} -endif; // twentyfifteen_get_color_scheme - -if ( ! function_exists( 'twentyfifteen_get_color_scheme_choices' ) ) : -/** - * Returns an array of color scheme choices registered for Twenty Fifteen. - * - * @since Twenty Fifteen 1.0 - * - * @return array Array of color schemes. - */ -function twentyfifteen_get_color_scheme_choices() { - $color_schemes = twentyfifteen_get_color_schemes(); - $color_scheme_control_options = array(); - - foreach ( $color_schemes as $color_scheme => $value ) { - $color_scheme_control_options[ $color_scheme ] = $value['label']; - } - - return $color_scheme_control_options; -} -endif; // twentyfifteen_get_color_scheme_choices - -if ( ! function_exists( 'twentyfifteen_sanitize_color_scheme' ) ) : -/** - * Sanitization callback for color schemes. - * - * @since Twenty Fifteen 1.0 - * - * @param string $value Color scheme name value. - * @return string Color scheme name. - */ -function twentyfifteen_sanitize_color_scheme( $value ) { - $color_schemes = twentyfifteen_get_color_scheme_choices(); - - if ( ! array_key_exists( $value, $color_schemes ) ) { - $value = 'default'; - } - - return $value; -} -endif; // twentyfifteen_sanitize_color_scheme - -/** - * Enqueues front-end CSS for color scheme. - * - * @since Twenty Fifteen 1.0 - * - * @see wp_add_inline_style() - */ -function twentyfifteen_color_scheme_css() { - $color_scheme_option = get_theme_mod( 'color_scheme', 'default' ); - - // Don't do anything if the default color scheme is selected. - if ( 'default' === $color_scheme_option ) { - return; - } - - $color_scheme = twentyfifteen_get_color_scheme(); - - // Convert main and sidebar text hex color to rgba. - $color_textcolor_rgb = twentyfifteen_hex2rgb( $color_scheme[3] ); - $color_sidebar_textcolor_rgb = twentyfifteen_hex2rgb( $color_scheme[4] ); - $colors = array( - 'background_color' => $color_scheme[0], - 'header_background_color' => $color_scheme[1], - 'box_background_color' => $color_scheme[2], - 'textcolor' => $color_scheme[3], - 'secondary_textcolor' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.7)', $color_textcolor_rgb ), - 'border_color' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.1)', $color_textcolor_rgb ), - 'border_focus_color' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.3)', $color_textcolor_rgb ), - 'sidebar_textcolor' => $color_scheme[4], - 'sidebar_border_color' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.1)', $color_sidebar_textcolor_rgb ), - 'sidebar_border_focus_color' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.3)', $color_sidebar_textcolor_rgb ), - 'secondary_sidebar_textcolor' => vsprintf( 'rgba( %1$s, %2$s, %3$s, 0.7)', $color_sidebar_textcolor_rgb ), - 'meta_box_background_color' => $color_scheme[5], - ); - - $color_scheme_css = twentyfifteen_get_color_scheme_css( $colors ); - - wp_add_inline_style( 'twentyfifteen-style', $color_scheme_css ); -} -add_action( 'wp_enqueue_scripts', 'twentyfifteen_color_scheme_css' ); - -/** - * Binds JS listener to make Customizer color_scheme control. - * - * Passes color scheme data as colorScheme global. - * - * @since Twenty Fifteen 1.0 - */ -function twentyfifteen_customize_control_js() { - wp_enqueue_script( 'color-scheme-control', get_template_directory_uri() . '/js/color-scheme-control.js', array( 'customize-controls', 'iris', 'underscore', 'wp-util' ), '20141216', true ); - wp_localize_script( 'color-scheme-control', 'colorScheme', twentyfifteen_get_color_schemes() ); -} -add_action( 'customize_controls_enqueue_scripts', 'twentyfifteen_customize_control_js' ); - -/** - * Binds JS handlers to make the Customizer preview reload changes asynchronously. - * - * @since Twenty Fifteen 1.0 - */ -function twentyfifteen_customize_preview_js() { - wp_enqueue_script( 'twentyfifteen-customize-preview', get_template_directory_uri() . '/js/customize-preview.js', array( 'customize-preview' ), '20141216', true ); -} -add_action( 'customize_preview_init', 'twentyfifteen_customize_preview_js' ); - -/** - * Returns CSS for the color schemes. - * - * @since Twenty Fifteen 1.0 - * - * @param array $colors Color scheme colors. - * @return string Color scheme CSS. - */ -function twentyfifteen_get_color_scheme_css( $colors ) { - $colors = wp_parse_args( $colors, array( - 'background_color' => '', - 'header_background_color' => '', - 'box_background_color' => '', - 'textcolor' => '', - 'secondary_textcolor' => '', - 'border_color' => '', - 'border_focus_color' => '', - 'sidebar_textcolor' => '', - 'sidebar_border_color' => '', - 'sidebar_border_focus_color' => '', - 'secondary_sidebar_textcolor' => '', - 'meta_box_background_color' => '', - ) ); - - $css = << a, - .author-description a, - .taxonomy-description a, - .textwidget a, - .entry-footer a:hover, - .comment-metadata a:hover, - .pingback .edit-link a:hover, - .comment-list .reply a:hover, - .site-info a:hover { - border-color: {$colors['textcolor']}; - } - - /* Secondary Text Color */ - button:hover, - button:focus, - input[type="button"]:hover, - input[type="button"]:focus, - input[type="reset"]:hover, - input[type="reset"]:focus, - input[type="submit"]:hover, - input[type="submit"]:focus, - .pagination .prev:hover, - .pagination .prev:focus, - .pagination .next:hover, - .pagination .next:focus, - .widget_calendar tbody a:hover, - .widget_calendar tbody a:focus, - .page-links a:hover, - .page-links a:focus { - background-color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - background-color: {$colors['secondary_textcolor']}; - } - - /* Secondary Text Color */ - blockquote, - a:hover, - a:focus, - .main-navigation .menu-item-description, - .post-navigation .meta-nav, - .post-navigation a:hover .post-title, - .post-navigation a:focus .post-title, - .image-navigation, - .image-navigation a, - .comment-navigation, - .comment-navigation a, - .widget, - .author-heading, - .entry-footer, - .entry-footer a, - .taxonomy-description, - .page-links > .page-links-title, - .entry-caption, - .comment-author, - .comment-metadata, - .comment-metadata a, - .pingback .edit-link, - .pingback .edit-link a, - .post-password-form label, - .comment-form label, - .comment-notes, - .comment-awaiting-moderation, - .logged-in-as, - .form-allowed-tags, - .no-comments, - .site-info, - .site-info a, - .wp-caption-text, - .gallery-caption, - .comment-list .reply a, - .widecolumn label, - .widecolumn .mu_register label { - color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - color: {$colors['secondary_textcolor']}; - } - - /* Secondary Text Color */ - blockquote, - .logged-in-as a:hover, - .comment-author a:hover { - border-color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - border-color: {$colors['secondary_textcolor']}; - } - - /* Border Color */ - hr, - .dropdown-toggle:hover, - .dropdown-toggle:focus { - background-color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - background-color: {$colors['border_color']}; - } - - /* Border Color */ - pre, - abbr[title], - table, - th, - td, - input, - textarea, - .main-navigation ul, - .main-navigation li, - .post-navigation, - .post-navigation div + div, - .pagination, - .comment-navigation, - .widget li, - .widget_categories .children, - .widget_nav_menu .sub-menu, - .widget_pages .children, - .site-header, - .site-footer, - .hentry + .hentry, - .author-info, - .entry-content .page-links a, - .page-links > span, - .page-header, - .comments-area, - .comment-list + .comment-respond, - .comment-list article, - .comment-list .pingback, - .comment-list .trackback, - .comment-list .reply a, - .no-comments { - border-color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - border-color: {$colors['border_color']}; - } - - /* Border Focus Color */ - a:focus, - button:focus, - input:focus { - outline-color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - outline-color: {$colors['border_focus_color']}; - } - - input:focus, - textarea:focus { - border-color: {$colors['textcolor']}; /* Fallback for IE7 and IE8 */ - border-color: {$colors['border_focus_color']}; - } - - /* Sidebar Link Color */ - .secondary-toggle:before { - color: {$colors['sidebar_textcolor']}; - } - - .site-title a, - .site-description { - color: {$colors['sidebar_textcolor']}; - } - - /* Sidebar Text Color */ - .site-title a:hover, - .site-title a:focus { - color: {$colors['secondary_sidebar_textcolor']}; - } - - /* Sidebar Border Color */ - .secondary-toggle { - border-color: {$colors['sidebar_textcolor']}; /* Fallback for IE7 and IE8 */ - border-color: {$colors['sidebar_border_color']}; - } - - /* Sidebar Border Focus Color */ - .secondary-toggle:hover, - .secondary-toggle:focus { - border-color: {$colors['sidebar_textcolor']}; /* Fallback for IE7 and IE8 */ - border-color: {$colors['sidebar_border_focus_color']}; - } - - .site-title a { - outline-color: {$colors['sidebar_textcolor']}; /* Fallback for IE7 and IE8 */ - outline-color: {$colors['sidebar_border_focus_color']}; - } - - /* Meta Background Color */ - .entry-footer { - background-color: {$colors['meta_box_background_color']}; - } - - @media screen and (min-width: 38.75em) { - /* Main Text Color */ - .page-header { - border-color: {$colors['textcolor']}; - } - } - - @media screen and (min-width: 59.6875em) { - /* Make sure its transparent on desktop */ - .site-header, - .secondary { - background-color: transparent; - } - - /* Sidebar Background Color */ - .widget button, - .widget input[type="button"], - .widget input[type="reset"], - .widget input[type="submit"], - .widget_calendar tbody a, - .widget_calendar tbody a:hover, - .widget_calendar tbody a:focus { - color: {$colors['header_background_color']}; - } - - /* Sidebar Link Color */ - .secondary a, - .dropdown-toggle:after, - .widget-title, - .widget blockquote cite, - .widget blockquote small { - color: {$colors['sidebar_textcolor']}; - } - - .widget button, - .widget input[type="button"], - .widget input[type="reset"], - .widget input[type="submit"], - .widget_calendar tbody a { - background-color: {$colors['sidebar_textcolor']}; - } - - .textwidget a { - border-color: {$colors['sidebar_textcolor']}; - } - - /* Sidebar Text Color */ - .secondary a:hover, - .secondary a:focus, - .main-navigation .menu-item-description, - .widget, - .widget blockquote, - .widget .wp-caption-text, - .widget .gallery-caption { - color: {$colors['secondary_sidebar_textcolor']}; - } - - .widget button:hover, - .widget button:focus, - .widget input[type="button"]:hover, - .widget input[type="button"]:focus, - .widget input[type="reset"]:hover, - .widget input[type="reset"]:focus, - .widget input[type="submit"]:hover, - .widget input[type="submit"]:focus, - .widget_calendar tbody a:hover, - .widget_calendar tbody a:focus { - background-color: {$colors['secondary_sidebar_textcolor']}; - } - - .widget blockquote { - border-color: {$colors['secondary_sidebar_textcolor']}; - } - - /* Sidebar Border Color */ - .main-navigation ul, - .main-navigation li, - .widget input, - .widget textarea, - .widget table, - .widget th, - .widget td, - .widget pre, - .widget li, - .widget_categories .children, - .widget_nav_menu .sub-menu, - .widget_pages .children, - .widget abbr[title] { - border-color: {$colors['sidebar_border_color']}; - } - - .dropdown-toggle:hover, - .dropdown-toggle:focus, - .widget hr { - background-color: {$colors['sidebar_border_color']}; - } - - .widget input:focus, - .widget textarea:focus { - border-color: {$colors['sidebar_border_focus_color']}; - } - - .sidebar a:focus, - .dropdown-toggle:focus { - outline-color: {$colors['sidebar_border_focus_color']}; - } - } -CSS; - - return $css; -} - -/** - * Output an Underscore template for generating CSS for the color scheme. - * - * The template generates the css dynamically for instant display in the Customizer - * preview. - * - * @since Twenty Fifteen 1.0 - */ -function twentyfifteen_color_scheme_css_template() { - $colors = array( - 'background_color' => '{{ data.background_color }}', - 'header_background_color' => '{{ data.header_background_color }}', - 'box_background_color' => '{{ data.box_background_color }}', - 'textcolor' => '{{ data.textcolor }}', - 'secondary_textcolor' => '{{ data.secondary_textcolor }}', - 'border_color' => '{{ data.border_color }}', - 'border_focus_color' => '{{ data.border_focus_color }}', - 'sidebar_textcolor' => '{{ data.sidebar_textcolor }}', - 'sidebar_border_color' => '{{ data.sidebar_border_color }}', - 'sidebar_border_focus_color' => '{{ data.sidebar_border_focus_color }}', - 'secondary_sidebar_textcolor' => '{{ data.secondary_sidebar_textcolor }}', - 'meta_box_background_color' => '{{ data.meta_box_background_color }}', - ); - ?> - -