Drupal: pathauto и транслитерация
В качестве короткой заметки на тему вчерашнего и ряда следующих текстов.
Для Drupal есть модуль Pathauto, который делает человеко понятные урлы: заменяет пробелы на минусы (или подчеркивания), меняет ужасные /taxonomy/term/NNN на /tags/имя-тега и так далее.
Все из себя настраиваемое и вообще хорошее, если бы не одно но:
- Оно умеет транслитерацию (в частности, URL данного текста странслировался бы в ...i_transliteratsiya.....
- Оно умеет формировать URL-ы из кучи макросов (дата, рубрика и все такое), этого богатства более чем хватает для жизни.
- Но! Включение транслитерации - глобальное. Или мы транслитерируем все (URL заметок, теги и т.п.) или не транслитерируем ничего.
Короче, патч: pathauto-transliterate.diff.gz
Если в паттерн для формирования URL включить текст 'no-transliterate-me', то данный текст будет удален, а то что осталось - не будет транслитерировано.
Все очень на скорую руку, только для таксономии (тегов), но там по образу и подобию несложно доточить для других типов - муторно, но можно.
К сожалению, модуль написан достаточно плотно, транслитерация делается на очень ранней стадии, поэтому сделать более удобные макросы по месту [notr-macro] и [macro] - сходу не получилось.
Автор слышал о проблеме и справедливо замечает, что и размножение макросов и отдельные настройки для каждого типа данных - плохо. И я с ним согласен, но вот мне - надо,
При случае, подумаю про эту тему еще.
Comments
На моем сайте
На моем сайте http://www.soft4u.org.ua, по неопытности вкл. УРЛ по-русски. Когда прикручивал Boost (кэш на файлах) наткнулся на проблемы с кодировкой. Имена кэш-файлов отображаются крякозябрами. Как перелопатить все УРЛ разобрался, но все страницы станут 404 естественно. Есть ли вариант без потерь ?
Ну так надо нагенерировать
Ну так надо нагенерировать алиасов, и старых и новых. Возможно, добавить Global Redirect.
Global Redirect установлен.
Global Redirect установлен. Как добавить Global Redirect?