Хочу в шаблоне PHP поля Views (поле возраст) подставить окончание Год или Лет в зависимости от числа (21 год, 30 лет и т.д) За гуглил а везде только про окончание слов, если кто то реализовывал поделитесь кодом если есть, ну или хотя бы маленький кусочек кода... а я продолжу.
p.s. Просто я не в теме может там какую функцию Drupal надо вызывать ну и т.д.
Комментарии
.
http://kostjukov.miksar.ru/note/php-god-let-goda/
я правильно понимаю код надо в template.php прописать?
мопед не мой, я просто разместил объяву)
Ну вот все хорошо, но немогу я его подключить, хоть ты тресни..
Гм, а чем средства Drupal не устраивают?
<?php
format_plural(ЧИСЛО, '1 year', '@count years');
?>
Да по фигу главное что бы работало, а как средство Друпал помогут в моем вопросе?
http://api.drupal.ru/api/function/format_plural/6
это то!
Ок! drupby - Вы же прочли заголовок, че мне делать..? с этой темой? не хрена я не соображу!
Код же привёл. Как помогут? Очень даже просто помогут.
Типа так, наверное:
<?php
print format_plural($fields['ПОЛЕ']->content, '1 year', '@count years');
?>
Работает.. только вот возле всех чисел пишет лет а надо, если 21 - то год, если 32 то года.
найди в переводе через интерфейс переводов @count years и @count[2] years
Зависит от корректности переводов в системе. У меня всё правильно выводит.
/admin/build/translate/search
1 year
@count год
@count years
@count года
@count[2] years
@count[2] лет
Все перевел как тут но, все числа воспринимают только @count[2] years в чем может быть косяк....блин...
Попробуйте почистить кэш. Действительно, как-то странно... У меня всё работает идеально.
Да да все так в смысле перевода, вот это у меня в шаблоне поля, может тут что не так.
<?php print $output;?>
<?php
print format_plural($fields['field-age-value']->content, '1 year', '@count years');
?>
p.s.Кеш чистил.Продолжает реагировать только на перевод строки @count[2] years
В смысле? Пример кода на скриншоте выше даёт правильный результат или нет?
нет неправельный
Я правильно понял, что Вы пробовали писать вместо
например:
и это ничего не дало?
Если да - сайт на хостинге? Доступ дать сможете? Безумно интересно, почему у всех работает кроме Вас.
пробывал вот так:
<?php print format_plural(21,'1 year', '@count years');?>
распознает верно вместо лет пишит год (после моего числа пишит 21 год) по всей видимости это в коде PHP он как то поле не понимает что ли в смысле ($fields['field-age-value']->content, а как еще можно написать?Издеваетесь? На один и тот же вопрос отвечаете по-разному. Вообще наудачу переспросил...
Попробуйте так для интереса поле ввести:
(int) $fields['field-age-value']->content
Поле вообще числовое? Ничего лишнего не выводит кроме цифр?
так напиши
print $fields['field-age-value']->content;
и посмотри что выведет
Ребята всё! нащупал!
<?php
print format_plural($output, '1 year', '@count years');
?>
Вот так работает!!! Вы извините за головоломку!!! Спасибо Вам большое за то что уделили время.
p.s. Может я туповат, а может просто из за того что с утра перед компом туплю под вечер.
Через views-view-field.tpl.php темизировали? Всё понятно, я думал через views-view-fields.tpl.php.
Да через это поле,темезировал.
Вы ничего не путаете? В views-view-field>>>s<<<.tpl.php поля выводятся через метод, что я писал в теме, а в views-view-field.tpl.php - в переменной $output.
Да, я уж в топике выше исправил просто field без S
Больше вопросов не имею В следующий раз старайтесь писать побольше деталей подобного рода, чтобы мы меньше гадали и Вас меньше мучали
Буду стараться, Спасибо Вам большое!