[ Index ]

PHP Cross Reference of WordPress Trunk (Updated Daily)

Search

title

Body

[close]

/wp-includes/customize/ -> class-wp-customize-header-image-setting.php (source)

   1  <?php
   2  /**
   3   * Customize API: WP_Customize_Header_Image_Setting class
   4   *
   5   * @package WordPress
   6   * @subpackage Customize
   7   * @since 4.4.0
   8   */
   9  
  10  /**
  11   * A setting that is used to filter a value, but will not save the results.
  12   *
  13   * Results should be properly handled using another setting or callback.
  14   *
  15   * @since 3.4.0
  16   *
  17   * @see WP_Customize_Setting
  18   */
  19  final class WP_Customize_Header_Image_Setting extends WP_Customize_Setting {
  20  
  21      /**
  22       * Unique string identifier for the setting.
  23       *
  24       * @since 3.4.0
  25       * @var string
  26       */
  27      public $id = 'header_image_data';
  28  
  29      /**
  30       * @since 3.4.0
  31       * @since 7.0.0 Return type updated from void to true for compatibility with base class.
  32       *
  33       * @global Custom_Image_Header $custom_image_header
  34       *
  35       * @param mixed $value The value to update.
  36       * @return true Always returns true.
  37       */
  38  	public function update( $value ) {
  39          global $custom_image_header;
  40  
  41          // If _custom_header_background_just_in_time() fails to initialize $custom_image_header when not is_admin().
  42          if ( empty( $custom_image_header ) ) {
  43              require_once  ABSPATH . 'wp-admin/includes/class-custom-image-header.php';
  44              $args                   = get_theme_support( 'custom-header' );
  45              $admin_head_callback    = $args[0]['admin-head-callback'] ?? null;
  46              $admin_preview_callback = $args[0]['admin-preview-callback'] ?? null;
  47              $custom_image_header    = new Custom_Image_Header( $admin_head_callback, $admin_preview_callback );
  48          }
  49  
  50          /*
  51           * If the value doesn't exist (removed or random),
  52           * use the header_image value.
  53           */
  54          if ( ! $value ) {
  55              $value = $this->manager->get_setting( 'header_image' )->post_value();
  56          }
  57  
  58          if ( is_array( $value ) && isset( $value['choice'] ) ) {
  59              $custom_image_header->set_header_image( $value['choice'] );
  60          } else {
  61              $custom_image_header->set_header_image( $value );
  62          }
  63          return true;
  64      }
  65  }


Generated : Tue Jun 30 08:20:12 2026 Cross-referenced by PHPXref