Как правильно сделать локализацию в modx, при работе с множественными числами?
1, 21, 31… день
2, 3, 4… дня
5, 6, 7… дней
Пока только такая идея сниппета:
return (n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2)
и использование внутри значения перевода:
[[+count]] [[+plural:is=`0`:then=`день`]][[+plural:is=`1`:then=`дня`]][[+plural:is=`2`:then=`дней`]]
Кстати, есть же
select
фильтр, но не пробовал. Может вместо сложной конструкции его использовать?
Upd:
[[+plural:select=`0=день&1=дня&2=дней`]]