[ Index ] |
PHP Cross Reference of WordPress |
[Summary view] [Print] [Text view]
1 <?php 2 /** 3 * Twenty Fourteen Customizer support 4 * 5 * @package WordPress 6 * @subpackage Twenty_Fourteen 7 * @since Twenty Fourteen 1.0 8 */ 9 10 /** 11 * Implement Customizer additions and adjustments. 12 * 13 * @since Twenty Fourteen 1.0 14 * 15 * @param WP_Customize_Manager $wp_customize Customizer object. 16 */ 17 function twentyfourteen_customize_register( $wp_customize ) { 18 // Add postMessage support for site title and description. 19 $wp_customize->get_setting( 'blogname' )->transport = 'postMessage'; 20 $wp_customize->get_setting( 'blogdescription' )->transport = 'postMessage'; 21 $wp_customize->get_setting( 'header_textcolor' )->transport = 'postMessage'; 22 23 if ( isset( $wp_customize->selective_refresh ) ) { 24 $wp_customize->selective_refresh->add_partial( 25 'blogname', 26 array( 27 'selector' => '.site-title a', 28 'container_inclusive' => false, 29 'render_callback' => 'twentyfourteen_customize_partial_blogname', 30 ) 31 ); 32 $wp_customize->selective_refresh->add_partial( 33 'blogdescription', 34 array( 35 'selector' => '.site-description', 36 'container_inclusive' => false, 37 'render_callback' => 'twentyfourteen_customize_partial_blogdescription', 38 ) 39 ); 40 } 41 42 // Rename the label to "Site Title Color" because this only affects the site title in this theme. 43 $wp_customize->get_control( 'header_textcolor' )->label = __( 'Site Title Color', 'twentyfourteen' ); 44 45 // Rename the label to "Display Site Title & Tagline" in order to make this option extra clear. 46 $wp_customize->get_control( 'display_header_text' )->label = __( 'Display Site Title & Tagline', 'twentyfourteen' ); 47 48 // Add custom description to Colors and Background controls or sections. 49 if ( property_exists( $wp_customize->get_control( 'background_color' ), 'description' ) ) { 50 $wp_customize->get_control( 'background_color' )->description = __( 'May only be visible on wide screens.', 'twentyfourteen' ); 51 $wp_customize->get_control( 'background_image' )->description = __( 'May only be visible on wide screens.', 'twentyfourteen' ); 52 } else { 53 $wp_customize->get_section( 'colors' )->description = __( 'Background may only be visible on wide screens.', 'twentyfourteen' ); 54 $wp_customize->get_section( 'background_image' )->description = __( 'Background may only be visible on wide screens.', 'twentyfourteen' ); 55 } 56 57 // Add the featured content section in case it's not already there. 58 $wp_customize->add_section( 59 'featured_content', 60 array( 61 'title' => __( 'Featured Content', 'twentyfourteen' ), 62 'description' => sprintf( 63 /* translators: 1: Featured tag editor URL, 2: Post editor URL. */ 64 __( 'Use a <a href="%1$s">tag</a> to feature your posts. If no posts match the tag, <a href="%2$s">sticky posts</a> will be displayed instead.', 'twentyfourteen' ), 65 esc_url( add_query_arg( 'tag', _x( 'featured', 'featured content default tag slug', 'twentyfourteen' ), admin_url( 'edit.php' ) ) ), 66 admin_url( 'edit.php?show_sticky=1' ) 67 ), 68 'priority' => 130, 69 'active_callback' => 'is_front_page', 70 ) 71 ); 72 73 // Add the featured content layout setting and control. 74 $wp_customize->add_setting( 75 'featured_content_layout', 76 array( 77 'default' => 'grid', 78 'sanitize_callback' => 'twentyfourteen_sanitize_layout', 79 ) 80 ); 81 82 $wp_customize->add_control( 83 'featured_content_layout', 84 array( 85 'label' => __( 'Layout', 'twentyfourteen' ), 86 'section' => 'featured_content', 87 'type' => 'select', 88 'choices' => array( 89 'grid' => __( 'Grid', 'twentyfourteen' ), 90 'slider' => __( 'Slider', 'twentyfourteen' ), 91 ), 92 ) 93 ); 94 } 95 add_action( 'customize_register', 'twentyfourteen_customize_register' ); 96 97 /** 98 * Render the site title for the selective refresh partial. 99 * 100 * @since Twenty Fourteen 1.7 101 * 102 * @see twentyfourteen_customize_register() 103 * 104 * @return void 105 */ 106 function twentyfourteen_customize_partial_blogname() { 107 bloginfo( 'name' ); 108 } 109 110 /** 111 * Render the site tagline for the selective refresh partial. 112 * 113 * @since Twenty Fourteen 1.7 114 * 115 * @see twentyfourteen_customize_register() 116 * 117 * @return void 118 */ 119 function twentyfourteen_customize_partial_blogdescription() { 120 bloginfo( 'description' ); 121 } 122 123 /** 124 * Sanitize the Featured Content layout value. 125 * 126 * @since Twenty Fourteen 1.0 127 * 128 * @param string $layout Layout type. 129 * @return string Filtered layout type (grid|slider). 130 */ 131 function twentyfourteen_sanitize_layout( $layout ) { 132 if ( ! in_array( $layout, array( 'grid', 'slider' ), true ) ) { 133 $layout = 'grid'; 134 } 135 136 return $layout; 137 } 138 139 /** 140 * Bind JS handlers to make Customizer preview reload changes asynchronously. 141 * 142 * @since Twenty Fourteen 1.0 143 */ 144 function twentyfourteen_customize_preview_js() { 145 wp_enqueue_script( 'twentyfourteen_customizer', get_template_directory_uri() . '/js/customizer.js', array( 'customize-preview' ), '20141015', true ); 146 } 147 add_action( 'customize_preview_init', 'twentyfourteen_customize_preview_js' ); 148 149 /** 150 * Add contextual help to the Themes and Post edit screens. 151 * 152 * @since Twenty Fourteen 1.0 153 */ 154 function twentyfourteen_contextual_help() { 155 if ( 'admin_head-edit.php' === current_filter() && 'post' !== $GLOBALS['typenow'] ) { 156 return; 157 } 158 159 get_current_screen()->add_help_tab( 160 array( 161 'id' => 'twentyfourteen', 162 'title' => __( 'Twenty Fourteen', 'twentyfourteen' ), 163 'content' => 164 '<ul>' . 165 /* translators: 1: Featured tag editor URL, 2: Post editor URL, 3: Customizer URL, 4: Post editor URL. */ 166 '<li>' . sprintf( __( 'The home page features your choice of up to 6 posts prominently displayed in a grid or slider, controlled by a <a href="%1$s">tag</a>; you can change the tag and layout in <a href="%2$s">Appearance → Customize</a>. If no posts match the tag, <a href="%3$s">sticky posts</a> will be displayed instead.', 'twentyfourteen' ), esc_url( add_query_arg( 'tag', _x( 'featured', 'featured content default tag slug', 'twentyfourteen' ), admin_url( 'edit.php' ) ) ), admin_url( 'customize.php' ), admin_url( 'edit.php?show_sticky=1' ) ) . '</li>' . 167 /* translators: %s: Featured images documentation URL. */ 168 '<li>' . sprintf( __( 'Enhance your site design by using <a href="%s">Featured Images</a> for posts you’d like to stand out (also known as post thumbnails). This allows you to associate an image with your post without inserting it. Twenty Fourteen uses featured images for posts and pages—above the title—and in the Featured Content area on the home page.', 'twentyfourteen' ), 'https://codex.wordpress.org/Post_Thumbnails#Setting_a_Post_Thumbnail' ) . '</li>' . 169 /* translators: %s: Twenty Fourteen documentation URL. */ 170 '<li>' . sprintf( __( 'For an in-depth tutorial, and more tips and tricks, visit the <a href="%s">Twenty Fourteen documentation</a>.', 'twentyfourteen' ), 'https://codex.wordpress.org/Twenty_Fourteen' ) . '</li>' . 171 '</ul>', 172 ) 173 ); 174 } 175 add_action( 'admin_head-themes.php', 'twentyfourteen_contextual_help' ); 176 add_action( 'admin_head-edit.php', 'twentyfourteen_contextual_help' );
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Thu Nov 21 01:00:03 2024 | Cross-referenced by PHPXref 0.7.1 |