wp_install_language_form

The timeline below displays how wordpress function wp_install_language_form has changed across different WordPress versions. If a version is not listed, refer to the next available version below.

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>';
}

WordPress Version: 5.4

/**
 * 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'] ?: 'Continue'), in_array($language['language'], $installed_languages) ? ' 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'] ?: 'Continue'), in_array($language['language'], $installed_languages) ? ' 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>';
}

WordPress Version: 4.3

/**
 * Output the select form for the language selection on the installation screen.
 *
 * @since 4.0.0
 *
 * @global string $wp_local_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']), in_array($language['language'], $installed_languages) ? ' 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']), in_array($language['language'], $installed_languages) ? ' 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>';
}

WordPress Version: 4.2

/**
 * Output the select form for the language selection on the installation screen.
 *
 * @since 4.0.0
 *
 * @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']), in_array($language['language'], $installed_languages) ? ' 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']), in_array($language['language'], $installed_languages) ? ' 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>';
}

WordPress Version: 4.0

/**
 * Output the select form for the language selection on the installation screen.
 *
 * @since 4.0.0
 *
 * @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($language['iso'][1]), esc_attr($language['strings']['continue']), in_array($language['language'], $installed_languages) ? ' 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($language['iso'][1]), esc_attr($language['strings']['continue']), in_array($language['language'], $installed_languages) ? ' 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>';
}