Главная Новости

_n() - функция WordPress


Опубликовано: 01.09.2018

видео _n() - функция WordPress

arif köse unutulmadın .2412556519764_39005_2.mp4

Позволяет получить перевод единственной или множественной формы слова, в зависимости от стоящего перед ним числа.

При возникновении проблем с чтением языковых файлов, сравнение будет происходить между заданными значениями параметров $single и $plural .



_n ( $single , $plural , $number , $domain = 'default' )
$single (строка) Строка, которая будет использоваться, если $number равно 1. $plural (строка) Строка, которая будет использоваться, если $number — не 1. Возможно тут вы скажете — «Но ведь в русском языке 3 формы множественного числа!». Да, верно, три, например «1 сайт, 2 сайта, 5 сайтов» — всё это тоже будет хорошо работать, тут главное правильно настроить программу Poedit . $number (целое число) Число, которое будет определять использование формы единственного или множественного числа. $domain (строка) Уникальный идентификатор языковых файлов, подробнее тут .

Примеры

Простой пример, чтобы понять, как вообще работает функция:


Midea美的 DJ12B DEF4现磨五谷豆浆机家用多功能婴儿辅食豆浆机 2

$amount = '4' ; echo _n ( 'One' , 'Many' , $amount , 'truemisha' ) ; // если $amount не равен 1 (0 кстати тоже прокатит), то выведет перевод для 'Many' (много) // если $amount равен 1, то выведет перевод слова 'One' (один)

Подобные примеры вы нечасто найдете в темах и плагинах WordPress, обычно в таких случаях всегда используется php-функция sprintf().


Sprungloaded - Easy

$amount = '4' ; $products = sprintf ( _n ( '1 product' , '%s products' , $amount , 'truemisha' ) , $amount ) ; // "4 товара" echo $products ;

Ничего сложного, главное запомните одну вещь — никаких вычислений внутри sprintf()!

Кстати, если не указывать последний параметр функции, $domain, то для перевода будут использоваться стандртные языковые файлы WordPress (которые задействованы в переводе движка). Понятное дело, что перевода ваших строк там может и не быть.

echo sprintf ( _n ( '%s comment approved' , '%s comments approved' , $approved ) , $approved ) ;
rss