根据给定目录中* .mo文件的存在获取所有可用语言。

原型

get_available_languages( string $dir = null )

描述

默认目录是WP_LANG_DIR。

参数

$dir (string) (Optional) 用于搜索语言文件的目录。默认WP_LANG_DIR。

返回值

(array)  语言代码数组或空数组(如果不存在语言)。通过从语言文件名中剥离.mo扩展名来形成语言代码。

源文件

路径:wp-includes/l10n.php

<?php
...
function get_available_languages( $dir = null ) {
	$languages = array();
	$lang_files = glob( ( is_null( $dir ) ? WP_LANG_DIR : $dir ) . '/*.mo' );
	if ( $lang_files ) {
		foreach ( $lang_files as $lang_file ) {
			$lang_file = basename( $lang_file, '.mo' );
			if ( 0 !== strpos( $lang_file, 'continents-cities' ) && 0 !== strpos( $lang_file, 'ms-' ) &&
				0 !== strpos( $lang_file, 'admin-' ) ) {
				$languages[] = $lang_file;
			}
		}
	}
	/**
	 * Filters the list of available language codes.
	 *
	 * @since 4.7.0
	 *
	 * @param array  $languages An array of available language codes.
	 * @param string $dir       The directory where the language files were found.
	 */
	return apply_filters( 'get_available_languages', $languages, $dir );
}
...
?>

其他

英文文档:https://developer.wordpress.org/reference/functions/get_available_languages/