WordPress.org

Make WordPress Core

Ticket #38796: 38796.3.diff

File 38796.3.diff, 5.0 KB (added by Christian1012, 4 years ago)
  • src/wp-includes/class-wp-customize-manager.php

     
    40144014                        'description'    => $control_description,
    40154015                        'section'        => 'header_image',
    40164016                        'mime_type'      => 'video',
    4017                         // @todo These button_labels can be removed once WP_Customize_Media_Control provides mime_type-specific labels automatically. See <https://core.trac.wordpress.org/ticket/38796>.
    4018                         'button_labels'  => array(
    4019                                 'select'       => __( 'Select Video' ),
    4020                                 'change'       => __( 'Change Video' ),
    4021                                 'placeholder'  => __( 'No video selected' ),
    4022                                 'frame_title'  => __( 'Select Video' ),
    4023                                 'frame_button' => __( 'Choose Video' ),
    4024                         ),
    40254017                        'active_callback' => 'is_header_video_active',
    40264018                ) ) );
    40274019
  • src/wp-includes/customize/class-wp-customize-image-control.php

     
    1919        public $mime_type = 'image';
    2020
    2121        /**
    22          * Constructor.
    23          *
    24          * @since 3.4.0
    25          * @uses WP_Customize_Upload_Control::__construct()
    26          *
    27          * @param WP_Customize_Manager $manager Customizer bootstrap instance.
    28          * @param string               $id      Control ID.
    29          * @param array                $args    Optional. Arguments to override class property defaults.
    30          */
    31         public function __construct( $manager, $id, $args = array() ) {
    32                 parent::__construct( $manager, $id, $args );
    33 
    34                 $this->button_labels = wp_parse_args( $this->button_labels, array(
    35                         'select'       => __( 'Select Image' ),
    36                         'change'       => __( 'Change Image' ),
    37                         'remove'       => __( 'Remove' ),
    38                         'default'      => __( 'Default' ),
    39                         'placeholder'  => __( 'No image selected' ),
    40                         'frame_title'  => __( 'Select Image' ),
    41                         'frame_button' => __( 'Choose Image' ),
    42                 ) );
    43         }
    44 
    45         /**
    4622         * @since 3.4.2
    4723         * @deprecated 4.1.0
    4824         */
  • src/wp-includes/customize/class-wp-customize-media-control.php

     
    5555        public function __construct( $manager, $id, $args = array() ) {
    5656                parent::__construct( $manager, $id, $args );
    5757
    58                 if ( ! ( $this instanceof WP_Customize_Image_Control ) ) {
    59                         $this->button_labels = wp_parse_args( $this->button_labels, array(
    60                                 'select'       => __( 'Select File' ),
    61                                 'change'       => __( 'Change File' ),
    62                                 'default'      => __( 'Default' ),
    63                                 'remove'       => __( 'Remove' ),
    64                                 'placeholder'  => __( 'No file selected' ),
    65                                 'frame_title'  => __( 'Select File' ),
    66                                 'frame_button' => __( 'Choose File' ),
    67                         ) );
    68                 }
     58                $this->button_labels = wp_parse_args( $this->button_labels, $this->get_default_button_labels() );
    6959        }
    7060
    7161        /**
     
    212202                <# } #>
    213203                <?php
    214204        }
     205
     206        /**
     207         * Get Default Button Labels.
     208         *
     209         * Provides an array of the default button labels based on the mime type of the current control.
     210         *
     211         * @since  4.8.0
     212         *
     213         * @return array An associative array of default button labels.
     214         */
     215        public function get_default_button_labels() {
     216                // Get just the mime type and strip the mime subtype if present.
     217                $mime_type = ! empty( $this->mime_type ) ? strtok( ltrim( $this->mime_type, '/' ), '/' ) : 'default';
     218
     219                switch ( $mime_type ) {
     220                        case 'video' :
     221                                return array(
     222                                        'select'       => __( 'Select video' ),
     223                                        'change'       => __( 'Change video' ),
     224                                        'default'      => __( 'Default' ),
     225                                        'remove'       => __( 'Remove' ),
     226                                        'placeholder'  => __( 'No video selected' ),
     227                                        'frame_title'  => __( 'Select video' ),
     228                                        'frame_button' => __( 'Choose video' ),
     229                                );
     230                        case 'audio' :
     231                                return array(
     232                                        'select'       => __( 'Select audio' ),
     233                                        'change'       => __( 'Change audio' ),
     234                                        'default'      => __( 'Default' ),
     235                                        'remove'       => __( 'Remove' ),
     236                                        'placeholder'  => __( 'No audio selected' ),
     237                                        'frame_title'  => __( 'Select audio' ),
     238                                        'frame_button' => __( 'Choose audio' ),
     239                                );
     240                        case 'image' :
     241                                return array(
     242                                        'select'       => __( 'Select image' ),
     243                                        'change'       => __( 'Change image' ),
     244                                        'default'      => __( 'Default' ),
     245                                        'remove'       => __( 'Remove' ),
     246                                        'placeholder'  => __( 'No image selected' ),
     247                                        'frame_title'  => __( 'Select image' ),
     248                                        'frame_button' => __( 'Choose image' ),
     249                                );
     250                        default:
     251                                return array(
     252                                        'select'       => __( 'Select file' ),
     253                                        'change'       => __( 'Change file' ),
     254                                        'default'      => __( 'Default' ),
     255                                        'remove'       => __( 'Remove' ),
     256                                        'placeholder'  => __( 'No file selected' ),
     257                                        'frame_title'  => __( 'Select file' ),
     258                                        'frame_button' => __( 'Choose file' ),
     259                                );
     260                } // End switch().
     261        }
    215262}