maybe_upgrade_translations()

Download new language packs after core update.


Description

Called during update_core() from wp-admin/includes/update-core.php


Return

(void|bool|WP_Error) Returns true on success, WP_Error on failure.


Source

File: wp-admin/includes/translation-install.php

function maybe_upgrade_translations() {
	$languages = get_available_languages();

	// Return if no language packs currently installed
	if ( empty( $languages ) ) {
		return;
	}

	$available_languages = wp_get_available_translations();

	// Return if no language packs are available from the API
	if ( empty( $available_languages ) ) {
		return;
	}

	$result = true;
	$failed = array();

	foreach ( $languages as $language => $locale ) {
		if ( array_key_exists( $locale, $available_languages ) ) {
			$download = wp_download_language_pack( $locale, true );
			if ( $locale !== $download ) {
				$failed[] = $locale;
			}
		}
	}

	if ( ! empty( $failed ) ) {
		$result = new WP_Error(
			'language_pack_updates_failed',
			__( 'Unable to update language pack for locales' ),
			implode( ', ', $failed )
		);
	}

	return $result;
}


Changelog

Changelog
Version Description
CP-2.1.0 Introduced. CP-2.1.0