WordPress Version: 5.5
/**
* Output the select form for the language selection on the installation screen.
*
* @since 4.0.0
*
* @global string $wp_local_package Locale code of the package.
*
* @param array[] $languages Array of available languages (populated via the Translation API).
*/
function wp_install_language_form($languages)
{
global $wp_local_package;
$installed_languages = get_available_languages();
echo "<label class='screen-reader-text' for='language'>Select a default language</label>\n";
echo "<select size='14' name='language' id='language'>\n";
echo '<option value="" lang="en" selected="selected" data-continue="Continue" data-installed="1">English (United States)</option>';
echo "\n";
if (!empty($wp_local_package) && isset($languages[$wp_local_package])) {
if (isset($languages[$wp_local_package])) {
$language = $languages[$wp_local_package];
printf('<option value="%s" lang="%s" data-continue="%s"%s>%s</option>' . "\n", esc_attr($language['language']), esc_attr(current($language['iso'])), esc_attr($language['strings']['continue'] ? $language['strings']['continue'] : 'Continue'), in_array($language['language'], $installed_languages, true) ? ' data-installed="1"' : '', esc_html($language['native_name']));
unset($languages[$wp_local_package]);
}
}
foreach ($languages as $language) {
printf('<option value="%s" lang="%s" data-continue="%s"%s>%s</option>' . "\n", esc_attr($language['language']), esc_attr(current($language['iso'])), esc_attr($language['strings']['continue'] ? $language['strings']['continue'] : 'Continue'), in_array($language['language'], $installed_languages, true) ? ' data-installed="1"' : '', esc_html($language['native_name']));
}
echo "</select>\n";
echo '<p class="step"><span class="spinner"></span><input id="language-continue" type="submit" class="button button-primary button-large" value="Continue" /></p>';
}