Make WordPress Core

Ticket #33844: 33844.2.diff

File 33844.2.diff, 2.8 KB (added by DrewAPicture, 11 years ago)
  • src/wp-signup.php

     
    5656                        .mu_register #user_email,
    5757                        .mu_register #blogname,
    5858                        .mu_register #user_name { width:100%; font-size: 24px; margin:5px 0; }
     59                .mu_register #site-language { display: block; }
    5960                .mu_register .prefix_address,
    6061                        .mu_register .suffix_address {font-size: 18px;display:inline; }
    6162                .mu_register label { font-weight:700; font-size:15px; display:block; margin:10px 0; }
     
    121122        echo '<input name="blog_title" type="text" id="blog_title" value="'.esc_attr($blog_title).'" />';
    122123        ?>
    123124
     125        <?php
     126        // Site Language.
     127
     128        /**
     129         * Filter the list of available languages for front-end site signups.
     130         *
     131         * Passing an empty array to this hook will effectively disable output of the setting
     132         * on the signup form, and the default language will be used when creating the site.
     133         *
     134         * Languages not already installed will be stripped.
     135         *
     136         * @since 4.4.0
     137         *
     138         * @param array $available_languages Available languages.
     139         */
     140        $languages = (array) apply_filters( 'signup_available_languages', get_available_languages() );
     141
     142        /*
     143         * Strip any not-installed languages.
     144         *
     145         * We re-call get_available_languages() here in case a language pack was installed
     146         * in the 'signup_available_languages' callback before this point.
     147         */
     148        $languages = array_intersect_assoc( $languages, get_available_languages() );
     149
     150        if ( ! empty( $languages ) ) :
     151                ?>
     152                <p>
     153                        <label for="site-language"><?php _e( 'Site Language:' ); ?></label>
     154                        <?php
     155                        // Network default.
     156                        $lang = get_site_option( 'WPLANG' );
     157
     158                        // Use English if the default isn't available.
     159                        if ( ! in_array( $lang, $languages ) ) {
     160                                $lang = '';
     161                        }
     162
     163                        wp_dropdown_languages( array(
     164                                'name'                        => 'WPLANG',
     165                                'id'                          => 'site-language',
     166                                'selected'                    => $lang,
     167                                'languages'                   => $languages,
     168                                'show_available_translations' => false,
     169                        ) );
     170                        ?>
     171                </p>
     172        <?php endif; // Languages. ?>
     173
    124174        <div id="privacy">
    125175        <p class="privacy-intro">
    126176            <label for="blog_public_on"><?php _e('Privacy:') ?></label>
     
    330380                'public'  => $public
    331381        );
    332382
     383        // Handle the language setting for the new site.
     384        if ( ! empty( $_POST['WPLANG'] ) ) {
     385                $language = wp_unslash( sanitize_text_field( $_POST['WPLANG'] ) );
     386                if ( $language ) {
     387                        $blog_meta_defaults['WPLANG'] = $language;
     388                }
     389        }
     390
    333391        /**
    334392         * Filter the new site meta variables.
    335393         *
     
    339397         * @param array $blog_meta_defaults An array of default blog meta variables.
    340398         */
    341399        $meta_defaults = apply_filters( 'signup_create_blog_meta', $blog_meta_defaults );
     400
    342401        /**
    343402         * Filter the new default site meta variables.
    344403         *