
«Моя твоя не понимаю»
-- Древний чукотский фольклер
Наверняка многие из вас встречались с такими заголовками:

или такими:

Вся проблема в том, что в Друпале, заголовок этой формы устанавливается так:
drupal_set_title(t('Submit @name', array('@name' => $types[$type]->name)));И все бы было хорошо, если бы "великий и могучий", "солов'їна і співуча", а также белорусский и, возможно, ряд других языков не имели бы падежей.
Разные разработчики по-разному избавляются от этой проблемы. К примеру, можно вообще убирать заголовок на форме создания ноды (как на drupal.ru), или же выводить прямо в шаблоне вместо заголовка что-то другое.
Универсального рецепта не было до теперь.
Но в одно прекрасное утро был создан дивный модуль, который решает эту проблему на корню. Модуль переопределяет заголовк так, чтобы вместо безликого 'Submit @name', на перевод поступал, к примеру, 'Submit page' или 'Submit article', правильно перевести которые уже не составит труда.
Итак, модуль прикреплен в атаче к этой странице (Drupal 5.x).
P.S. Модуль содержит перевод для распространенных типов контента для русского и украинского языков. Чтобы переводы подхватывались автоматом, используйте Auto locale import. Если кто владеет другими языками, скидывайте ссылки на свои переводы.
| Прикрепленный файл | Размер |
|---|---|
| bonus_titles-5.x.zip | 4.4 кб |
| bonus_titles-6.x.zip | 4.07 кб |
# | Дмитрий
Здорово!
Разместите ссылку на drupal.ru, а то об этом замечательном модуле никто не знает :(
# | Stan
Что-то не функционирует. Подскажите, что делаю не так (скопировал, включил)?
Ооочень пригодится, а то "Разместить Доска объявлений" как-то не так звучит :)
# | вот вот
а как дописать в title еще:
+ город (у меня на разных городах свои города)
+ направление (кинотеатры или клубы...)
Для этого стоит уже написать несколько своих строк кода в phptemplate_preprocess_page() в файле template.php вашей темы, например, добавит в конец функции такое:
if ($_GET['q'] == 'node/add/your-content-type') {
drupal_set_title($your_title); // your_title формируете уже как-то по-своему
}# | andrey
К великому сажалению модуль так и не работает в D6
Может все-таки поправите, если не сложно.
Все работает. Никто даже не потрудился глянуть сорцы. Neochief - огромное спасибо!
В 6-ой версии в title страницы все отображается как указал в переводах ("Добавить объявление"), а на самой странице в как было так и осталось ("Создать Объявление").
Удалил в конце модуля условие, оставил только строку drupal_set_title($new_translated); . Все стало работать как надо.
Ссылки с других сайтов
Все молчат как партизаны.