diff --git src/wp-admin/css/login.css src/wp-admin/css/login.css index 5da174cadc..53bf1109c6 100644 --- src/wp-admin/css/login.css +++ src/wp-admin/css/login.css @@ -163,7 +163,8 @@ p { } .login #nav, -.login #backtoblog { +.login #backtoblog, +.language-switcher { font-size: 13px; padding: 0 24px 0; } @@ -248,6 +249,44 @@ body.interim-login { margin: 0; } +#language-switcher { + padding: 0; + background: none; + box-shadow: none; +} + +#language-switcher select { + height: 30px; +} + +.screen-reader-text { + border: 0; + clip: rect(1px, 1px, 1px, 1px); + -webkit-clip-path: inset(50%); + clip-path: inset(50%); + height: 1px; + margin: -1px; + overflow: hidden; + padding: 0; + position: absolute; + width: 1px; + word-wrap: normal !important; +} + +.language-switcher { + width: 320px; + margin: 0 auto 24px; + box-sizing: border-box; +} + +.language-switcher label { + margin-right: .5em; +} + +.language-switcher .dashicons { + line-height: 30px; +} + @-ms-viewport { width: device-width; } diff --git src/wp-login.php src/wp-login.php index e7467cb5b8..61a67ab557 100644 --- src/wp-login.php +++ src/wp-login.php @@ -265,6 +265,56 @@ function login_footer( $input_id = '' ) { +
+
+ + + + 'language-switcher-locales', + 'name' => 'wp_lang', + 'selected' => ! empty( $_GET['wp_lang'] ) ? sanitize_text_field( $_GET['wp_lang'] ) : get_locale(), + 'show_available_translations' => false, + 'languages' => get_available_languages(), + ); + + /** + * Filters default arguments for languages list on login screen. + * + * @since x.x.x + * + * @param Array $args Default arguments for dropdown languages on login page. + */ + wp_dropdown_languages( apply_filters( 'wp_login_language_switcher_args', $args ) ); + ?> + + + + + + + + + + + + + +
+
+ + +