Плагин не поддерживает локализацию средствами gettext. Самый простой в данном случае вариант — отредактировать текст прямо в плагине (не забыв про UTF-8 без BOM), тем более что там всего несколько слов.
В идеале можно предусмотреть сохранение перевода при обновлении (сделав его в виде отдельной функции) или предложить автору добавить поддержку локализации, но вряд ли этот плагин будет часто обновляться.
Sergey Biryukov
Спасибо, просто не первый раз уже нужно перевести плагин, и уже хочется както по культурному чтоли сделать, не в коде менять а через файл локализации. Если пойти трудным путем, то куда копать?
Вызывать строки через функции локализации. Например, строка
'<b>Author: ' . get_the_author() . '</b>'
будет представлена так:
'<b>' . __('Author: ', 'author-exposed') . get_the_author() . '</b>
http://codex.wordpress.org/I18n_for_WordPress_Developers
Sergey Biryukov
Спасибо! Вот ещё один вопрос, пару дней уже мучаюсь
Как в переводе вот єто понимать?
Plural Index Calculation:
n%100/10==1 ? 2 : n%10==1 ? 0 : (n+9)%10>3 ? 2 : 1
http://clip2net.com/s/135Op
Не правильно отображает множественное число коментариев. Мне нужно чтоб при 0 было — 0 коментарів, при 1 коментар, 2-4 коментарі, 5-10 коментарів.
Модератор
Юрій
(@yube)
Не правильно отображает множественное число коментариев.
То він, мабуть, мови не розуміє 🙂 Для русского был плагин… дай бог памяти… не помню 🙂
Вот, нашел в своей помойке код в functions.php
function om_number($number, $titles){
$cases = array (2, 0, 1, 1, 1, 2);
return $number." ".$titles[ ($number%100>4 && $number%100<20)? 2 : $cases[min($number%10, 5)] ];
}
function comments_number_rus($o) {
if (preg_match('/(\d+)/',$o, $matches)) {
return om_number($matches[1], Array('комментарий', 'комментария', 'комментариев')) . "\n";
}
else return $o;
}
if (!is_admin()) add_filter('comments_number', 'comments_number_rus');
Юрий
Да плагин на комменты у меня стоит)називается «правильне відмінювання коментарів» вроде так. Я просто себе поставил плагин вопрос\ответ, там тоже прописывается количество ответов на вопрос и тд, потому и ищу как перевести.Чую что всё кроется в этих загадочных символах Plural Index Calculation:
n%100/10==1 ? 2 : n%10==1 ? 0 : (n+9)%10>3 ? 2 : 1
Помогите плиз кто знает)
Plural Index Calculation
Это выражение (формула), описывающее схему употребления форм множественного числа в языке.
В языковом файле формы выглядят так:
msgid "%s comment approved"
msgid_plural "%s comments approved"
msgstr[0] "%s комментарий одобрен"
msgstr[1] "%s комментария одобрены"
msgstr[2] "%s комментариев одобрены"
Чтобы строка переводилась согласно выражению, она должна быть оформлена по такому принципу (пример из wp-admin/edit-comments.php
):
sprintf( _n( '%s comment approved', '%s comments approved', $approved ), $approved );
Т.е. в функцию передаются обе англоязычные формы и число, для которого нужно получить переведённую строку. Число подставляется в выражение, которое возвращает подходящую форму из языкового файла (0, 1 или 2). Затем число подставляется уже в эту форму, и получается итоговая строка.