wp_get_available_translations(): array

Get available translations from the WordPress.org API.

Description

See also

Return

array Array of translations keyed by the language code, each an associative array of data.
If the API response results in an error, an empty array will be returned.
  • ...$0 array
    • language string
      Language code.
    • version string
      WordPress version.
    • updated string
      Date the translation was last updated, in MySQL datetime format.
    • english_name string
      English name of the language.
    • native_name string
      Native name of the language.
    • package string
      URL to download the translation package.
    • iso string[]
      Array of ISO language codes.
    • strings array
      Array of translated strings used in the installation process.

Source

function wp_get_available_translations() {
	if ( ! wp_installing() ) {
		$translations = get_site_transient( 'available_translations' );
		if ( false !== $translations ) {
			return $translations;
		}
	}

	$api = translations_api( 'core', array( 'version' => wp_get_wp_version() ) );

	if ( is_wp_error( $api ) || empty( $api['translations'] ) ) {
		return array();
	}

	$translations = array();
	// Key the array with the language code.
	foreach ( $api['translations'] as $translation ) {
		$translations[ $translation['language'] ] = $translation;
	}

	if ( ! defined( 'WP_INSTALLING' ) ) {
		set_site_transient( 'available_translations', $translations, 3 * HOUR_IN_SECONDS );
	}

	return $translations;
}

Changelog

VersionDescription
4.0.0Introduced.

User Contributed Notes

  1. Skip to note 2 content

    Before calling wp_get_available_translations you should include translation-install.php like in the following example:

    require_once( ABSPATH . 'wp-admin/includes/translation-install.php' );
    $language_list = wp_get_available_translations();

    Otherwise you might get this fatal error if that file was not included before:
    Fatal error: Call to undefined function wp_get_available_translations()

You must log in before being able to contribute a note or feedback.