Make WordPress Core

Ticket #20513: 20513.4.diff

File 20513.4.diff, 6.2 KB (added by wonderboymusic, 10 years ago)
  • src/wp-includes/functions.wp-scripts.php

     
    88 * @subpackage BackPress
    99 */
    1010
     11function wp_scripts() {
     12        global $wp_scripts;
     13        if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
     14                $wp_scripts = new WP_Scripts();
     15        }
     16        return $wp_scripts;
     17}
     18
     19function wp_scripts_maybe_doing_it_wrong( $function ) {
     20        if ( did_action( 'init' ) ) {
     21                return;
     22        }
     23
     24        _doing_it_wrong( $function, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
     25                '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
     26}
     27
    1128/**
    1229 * Print scripts in document head that are in the $handles queue.
    1330 *
     
    3148         * @since 2.1.0
    3249         */
    3350        do_action( 'wp_print_scripts' );
    34         if ( '' === $handles ) // for wp_head
     51        if ( '' === $handles ) { // for wp_head
    3552                $handles = false;
     53        }
    3654
    37         global $wp_scripts;
    38         if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    39                 if ( ! did_action( 'init' ) )
    40                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    41                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
     55        wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
    4256
    43                 if ( !$handles )
    44                         return array(); // No need to instantiate if nothing is there.
    45                 else
    46                         $wp_scripts = new WP_Scripts();
     57        if ( ! $handles ) {
     58                return array(); // No need to instantiate if nothing is there.
    4759        }
    48 
    49         return $wp_scripts->do_items( $handles );
     60        return wp_scripts()->do_items( $handles );
    5061}
    5162
    5263/**
     
    7182 *                               Default 'false'. Accepts 'false' or 'true'.
    7283 */
    7384function wp_register_script( $handle, $src, $deps = array(), $ver = false, $in_footer = false ) {
    74         global $wp_scripts;
    75         if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    76                 if ( ! did_action( 'init' ) )
    77                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    78                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
    79                 $wp_scripts = new WP_Scripts();
    80         }
     85        $wp_scripts = wp_scripts();
     86        wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
    8187
    8288        $wp_scripts->add( $handle, $src, $deps, $ver );
    83         if ( $in_footer )
     89        if ( $in_footer ) {
    8490                $wp_scripts->add_data( $handle, 'group', 1 );
     91        }
    8592}
    8693
    8794/**
     
    115122function wp_localize_script( $handle, $object_name, $l10n ) {
    116123        global $wp_scripts;
    117124        if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    118                 if ( ! did_action( 'init' ) )
    119                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    120                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
    121 
     125                wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
    122126                return false;
    123127        }
    124128
    125         return $wp_scripts->localize( $handle, $object_name, $l10n );
     129        return wp_scripts()->localize( $handle, $object_name, $l10n );
    126130}
    127131
    128132/**
     
    139143 * @param string $handle Name of the script to be removed.
    140144 */
    141145function wp_deregister_script( $handle ) {
    142         global $wp_scripts;
    143         if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    144                 if ( ! did_action( 'init' ) )
    145                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    146                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
    147                 $wp_scripts = new WP_Scripts();
    148         }
     146        wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
    149147
    150148        /**
    151149         * Do not allow accidental or negligent de-registering of critical scripts in the admin.
     
    172170                }
    173171        }
    174172
    175         $wp_scripts->remove( $handle );
     173        wp_scripts()->remove( $handle );
    176174}
    177175
    178176/**
     
    195193 *                               Default 'false'. Accepts 'false' or 'true'.
    196194 */
    197195function wp_enqueue_script( $handle, $src = false, $deps = array(), $ver = false, $in_footer = false ) {
    198         global $wp_scripts;
    199         if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    200                 if ( ! did_action( 'init' ) )
    201                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    202                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
    203                 $wp_scripts = new WP_Scripts();
    204         }
     196        $wp_scripts = wp_scripts();
    205197
     198        wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
     199
    206200        $_handle = explode( '?', $handle );
    207201
    208202        if ( $src ) {
     
    227221 * @param string $handle Name of the script to be removed.
    228222 */
    229223function wp_dequeue_script( $handle ) {
    230         global $wp_scripts;
    231         if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    232                 if ( ! did_action( 'init' ) )
    233                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    234                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
    235                 $wp_scripts = new WP_Scripts();
    236         }
     224        wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
    237225
    238         $wp_scripts->dequeue( $handle );
     226        wp_scripts()->dequeue( $handle );
    239227}
    240228
    241229/**
     
    252240 * @return bool Whether the script script is queued.
    253241 */
    254242function wp_script_is( $handle, $list = 'enqueued' ) {
    255         global $wp_scripts;
    256         if ( ! is_a( $wp_scripts, 'WP_Scripts' ) ) {
    257                 if ( ! did_action( 'init' ) )
    258                         _doing_it_wrong( __FUNCTION__, sprintf( __( 'Scripts and styles should not be registered or enqueued until the %1$s, %2$s, or %3$s hooks.' ),
    259                                 '<code>wp_enqueue_scripts</code>', '<code>admin_enqueue_scripts</code>', '<code>login_enqueue_scripts</code>' ), '3.3' );
    260                 $wp_scripts = new WP_Scripts();
    261         }
     243        wp_scripts_maybe_doing_it_wrong( __FUNCTION__ );
    262244
    263         return (bool) $wp_scripts->query( $handle, $list );
     245        return (bool) wp_scripts()->query( $handle, $list );
    264246}