WordPress.org

Make WordPress Core

Ticket #3687: l10n.php-misc-revised.diff

File l10n.php-misc-revised.diff, 1.6 KB (added by nbachiyski, 15 years ago)

_c with description after the string, common translate function, ngettext filter

  • wp-includes/l10n.php

     
    1717        return $locale;
    1818}
    1919
    20 // Return a translated string.
    21 function __($text, $domain = 'default') {
     20function translate($text, $domain) {
    2221        global $l10n;
    2322
    2423        if (isset($l10n[$domain]))
     
    2726                return $text;
    2827}
    2928
     29// Return a translated string.
     30function __($text, $domain = 'default') {
     31        return translate($text, $domain);
     32}
     33
    3034// Echo a translated string.
    3135function _e($text, $domain = 'default') {
    32         global $l10n;
    33 
    34         if (isset($l10n[$domain]))
    35                 echo apply_filters('gettext', $l10n[$domain]->translate($text), $text);
    36         else
    37                 echo $text;
     36        echo translate($text, $domain);
    3837}
    3938
    4039function _c($text, $domain = 'default') {
    41         global $l10n;
    42 
    43         if ( isset($l10n[$domain]) )
    44                 $whole = apply_filters('gettext', $l10n[$domain]->translate($text), $text);
    45         else
    46                 $whole = $text;
    47 
    48         $trans = explode('|', $whole, 2);
    49         if ( isset( $trans[1] ) )
    50                 return $trans[1];
    51         else
    52                 return $trans[0];       
     40        $whole = translate($text, $domain);
     41        $last_bar = strrpos($whole, '|');
     42        if ( false == $last_bar ) {
     43                return $whole;
     44        } else {
     45                return substr($whole, 0, $last_bar);
     46        }
    5347}
    5448
    5549// Return the plural form.
     
    5751        global $l10n;
    5852
    5953        if (isset($l10n[$domain])) {
    60                 return $l10n[$domain]->ngettext($single, $plural, $number);
     54                return apply_filters('ngettext', $l10n[$domain]->ngettext($single, $plural, $number), $single, $plural, $number);
    6155        } else {
    6256                if ($number != 1)
    6357                        return $plural;