WordPress.org

Make WordPress Core

Ticket #19924: 19924.diff

File 19924.diff, 3.0 KB (added by nacin, 6 years ago)
  • wp-includes/locale.php

     
    186186                /* translators: $dec_point argument for http://php.net/number_format, default is . */
    187187                $trans = __('number_format_decimal_point');
    188188                $this->number_format['decimal_point'] = ('number_format_decimal_point' == $trans) ? '.' : $trans;
     189        }
    189190
    190                 // Locale-specific tweaks
    191                 if ( self::is_locale_rtl( get_locale() ) )
    192                         $this->text_direction = 'rtl';
    193 
     191        function set_text_direction() {
    194192                // Import the $text_direction global.
    195193                if ( isset( $GLOBALS['text_direction'] ) )
    196194                        $this->text_direction = $GLOBALS['text_direction'];
     195                // Check against our defined RTL list.
     196                elseif ( self::is_locale_rtl( get_locale() ) )
     197                        $this->text_direction = 'rtl';
    197198        }
    198199
    199200        /**
  • wp-includes/l10n.php

     
    380380function load_default_textdomain() {
    381381        $locale = get_locale();
    382382
    383         load_textdomain( 'default', WP_LANG_DIR . "/$locale.mo" );
     383        $result = load_textdomain( 'default', WP_LANG_DIR . "/$locale.mo" );
    384384
    385385        if ( ( is_multisite() || ( defined( 'WP_INSTALLING_NETWORK' ) && WP_INSTALLING_NETWORK ) ) && ! file_exists(  WP_LANG_DIR . "/admin-$locale.mo" ) ) {
    386386                load_textdomain( 'default', WP_LANG_DIR . "/ms-$locale.mo" );
    387                 return;
     387                return $result;
    388388        }
    389389
    390390        if ( is_admin()  )
     
    393393        if ( is_network_admin() || ( defined( 'WP_INSTALLING_NETWORK' ) && WP_INSTALLING_NETWORK ) )
    394394                load_textdomain( 'default', WP_LANG_DIR . "/admin-network-$locale.mo" );
    395395
     396        return $result;
    396397}
    397398
    398399/**
  • wp-settings.php

     
    258258wp_templating_constants(  );
    259259
    260260// Load the default text localization domain.
    261 load_default_textdomain();
    262 
    263 // Find the blog locale.
    264261$locale = get_locale();
    265 $locale_file = WP_LANG_DIR . "/$locale.php";
    266 if ( ( 0 === validate_file( $locale ) ) && is_readable( $locale_file ) )
    267         require( $locale_file );
    268 unset($locale_file);
     262if ( $locale_loaded = load_default_textdomain() ) {
     263        $locale_file = WP_LANG_DIR . "/$locale.php";
     264        if ( ( 0 === validate_file( $locale_file ) ) && is_readable( $locale_file ) )
     265                require( $locale_file );
     266        unset( $locale_file );
     267}
    269268
    270 // Pull in locale data after loading text domain.
    271269require_once( ABSPATH . WPINC . '/locale.php' );
    272270
    273271/**
     
    277275 */
    278276$GLOBALS['wp_locale'] = new WP_Locale();
    279277
     278if ( $locale_loaded )
     279        $GLOBALS['wp_locale']->set_text_direction();
     280unset( $locale_loaded );
     281
    280282// Load the functions for the active theme, for both parent and child theme if applicable.
    281283if ( ! defined( 'WP_INSTALLING' ) || 'wp-activate.php' === $pagenow ) {
    282284        if ( TEMPLATEPATH !== STYLESHEETPATH && file_exists( STYLESHEETPATH . '/functions.php' ) )