get_available_languages()
Gets all available languages based on the presence of .mo and .l10n.php files in a given directory.
The default directory is WP_LANG_DIR.
Хуки из функции
Возвращает
Строку[]. An array of language codes or an empty array if no languages are present. Language codes are formed by stripping the file extension from the language file names.
Использование
get_available_languages( $dir );
- $dir(строка)
- A directory to search for language files.
По умолчанию: WP_LANG_DIR
Заметки
- Global. WP_Textdomain_Registry. $wp_textdomain_registry WordPress Textdomain Registry.
Список изменений
| С версии 3.0.0 | Введена. |
| С версии 4.7.0 | The results are now filterable with the get_available_languages filter. |
| С версии 6.5.0 | The initial file list is now cached and also takes into account *.l10n.php files. |
Код get_available_languages() get available languages WP 6.8.3
function get_available_languages( $dir = null ) {
global $wp_textdomain_registry;
$languages = array();
$path = is_null( $dir ) ? WP_LANG_DIR : $dir;
$lang_files = $wp_textdomain_registry->get_language_files_from_path( $path );
if ( $lang_files ) {
foreach ( $lang_files as $lang_file ) {
$lang_file = basename( $lang_file, '.mo' );
$lang_file = basename( $lang_file, '.l10n.php' );
if ( ! str_starts_with( $lang_file, 'continents-cities' ) && ! str_starts_with( $lang_file, 'ms-' ) &&
! str_starts_with( $lang_file, 'admin-' ) ) {
$languages[] = $lang_file;
}
}
}
/**
* Filters the list of available language codes.
*
* @since 4.7.0
*
* @param string[] $languages An array of available language codes.
* @param string $dir The directory where the language files were found.
*/
return apply_filters( 'get_available_languages', array_unique( $languages ), $dir );
}