2004-04-15 21:56:04 -04:00
|
|
|
<?php
|
2005-02-07 02:25:30 -05:00
|
|
|
|
|
|
|
if ( defined('WPLANG') && '' != constant('WPLANG') ) {
|
2005-02-28 12:15:53 -05:00
|
|
|
include_once(ABSPATH . 'wp-includes/streams.php');
|
|
|
|
include_once(ABSPATH . 'wp-includes/gettext.php');
|
2005-02-07 02:25:30 -05:00
|
|
|
}
|
2004-04-25 22:00:08 -04:00
|
|
|
|
2005-01-29 18:17:10 -05:00
|
|
|
function get_locale() {
|
|
|
|
global $locale;
|
2004-04-25 22:00:08 -04:00
|
|
|
|
2005-01-29 18:17:10 -05:00
|
|
|
if (isset($locale))
|
|
|
|
return $locale;
|
|
|
|
|
|
|
|
// WPLANG is defined in wp-config.
|
|
|
|
if (defined('WPLANG')) {
|
|
|
|
$locale = WPLANG;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (empty($locale)) {
|
2004-04-25 22:00:08 -04:00
|
|
|
$locale = 'en_US';
|
2005-01-29 18:17:10 -05:00
|
|
|
}
|
2004-04-15 21:56:04 -04:00
|
|
|
|
2005-01-29 18:17:10 -05:00
|
|
|
$locale = apply_filters('locale', $locale);
|
2004-12-12 23:39:26 -05:00
|
|
|
|
2005-01-29 18:17:10 -05:00
|
|
|
return $locale;
|
|
|
|
}
|
2004-04-15 21:56:04 -04:00
|
|
|
|
|
|
|
// Return a translated string.
|
2004-10-17 22:27:35 -04:00
|
|
|
function __($text, $domain = 'default') {
|
|
|
|
global $l10n;
|
|
|
|
|
|
|
|
if (isset($l10n[$domain])) {
|
|
|
|
return $l10n[$domain]->translate($text);
|
|
|
|
} else {
|
|
|
|
return $text;
|
|
|
|
}
|
2004-04-15 21:56:04 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// Echo a translated string.
|
2004-10-17 22:27:35 -04:00
|
|
|
function _e($text, $domain = 'default') {
|
|
|
|
global $l10n;
|
|
|
|
|
|
|
|
if (isset($l10n[$domain])) {
|
|
|
|
echo $l10n[$domain]->translate($text);
|
|
|
|
} else {
|
|
|
|
echo $text;
|
|
|
|
}
|
2004-04-15 21:56:04 -04:00
|
|
|
}
|
|
|
|
|
|
|
|
// Return the plural form.
|
2004-10-17 22:27:35 -04:00
|
|
|
function __ngettext($single, $plural, $number, $domain = 'default') {
|
|
|
|
global $l10n;
|
|
|
|
|
|
|
|
if (isset($l10n[$domain])) {
|
|
|
|
return $l10n[$domain]->ngettext($single, $plural, $number);
|
|
|
|
} else {
|
2005-03-17 13:15:18 -05:00
|
|
|
if ($number != 1)
|
|
|
|
return $plural;
|
|
|
|
else
|
|
|
|
return $single;
|
2004-10-17 22:27:35 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
function load_textdomain($domain, $mofile) {
|
|
|
|
global $l10n;
|
|
|
|
|
2004-10-18 20:18:12 -04:00
|
|
|
if (isset($l10n[$domain])) {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
2004-10-17 22:27:35 -04:00
|
|
|
if ( is_readable($mofile)) {
|
2005-02-28 11:31:01 -05:00
|
|
|
$input = new CachedFileReader($mofile);
|
2004-10-17 22:27:35 -04:00
|
|
|
} else {
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
$l10n[$domain] = new gettext_reader($input);
|
|
|
|
}
|
|
|
|
|
2004-10-18 20:18:12 -04:00
|
|
|
function load_default_textdomain() {
|
2005-01-29 18:17:10 -05:00
|
|
|
global $l10n;
|
2004-10-18 20:18:12 -04:00
|
|
|
|
2005-01-29 18:17:10 -05:00
|
|
|
$locale = get_locale();
|
2004-10-18 20:18:12 -04:00
|
|
|
$mofile = ABSPATH . "wp-includes/languages/$locale.mo";
|
|
|
|
|
|
|
|
load_textdomain('default', $mofile);
|
|
|
|
}
|
|
|
|
|
2004-10-17 22:27:35 -04:00
|
|
|
function load_plugin_textdomain($domain) {
|
2005-01-29 18:17:10 -05:00
|
|
|
$locale = get_locale();
|
2004-10-17 22:27:35 -04:00
|
|
|
|
|
|
|
$mofile = ABSPATH . "wp-content/plugins/$domain-$locale.mo";
|
|
|
|
load_textdomain($domain, $mofile);
|
|
|
|
}
|
|
|
|
|
|
|
|
function load_theme_textdomain($domain) {
|
2005-01-29 18:17:10 -05:00
|
|
|
$locale = get_locale();
|
2004-10-17 22:27:35 -04:00
|
|
|
|
2004-10-18 00:38:49 -04:00
|
|
|
$mofile = get_template_directory() . "/$locale.mo";
|
2004-10-17 22:27:35 -04:00
|
|
|
load_textdomain($domain, $mofile);
|
2004-04-15 21:56:04 -04:00
|
|
|
}
|
2004-04-17 01:01:10 -04:00
|
|
|
|
2005-02-07 02:25:30 -05:00
|
|
|
?>
|