Привет, есть необходимость перевести сайт на кириллические урлы. На сайте стоит модуль translit и при создании ресурса его название автоматически транслитирировалось в алиас. Отключил транслитерацию. Для перехода перезаписывал все алиасы через consle, путем замены текущего алиаса на текущий заголовок ресурса с заменой пробела на "-". На этом этапе ошибок не было, ошибка возникла при перегенерации URI. Модх ругался на дубли, хотя в настройках отключил проверку на дубликат. В итоге modx генерировал uri с ошибкой либо вообще не генерировал.
Если речь о "Проверять на дублирование URI во всех контекстах" то очевидно же, что эта функция никак не повлияет на проверку на дублирование в одном контексте. Ведь у тебя ресурсы в контексте web?
Modx предлагает тебе:
Ресурс с идентификатором 210 уже использует URI название-страницы.html. Пожалуйста, введите уникальный псевдоним или используйте «Заморозить URI», чтобы вручную заменить его.
MODX Ambassador России, самозванный БЭМ-евангелист
Проверка на дубли работает только между контекстами. В рамках одного контекста дублей быть не может, поэтому и ошибка. Можно отключить транслитерацию, включить автоматическую генерацию ЧПУ и пройтись в Консоли опять по ресурсам, просто удаляя алиасы и сохраняя документы — вызовется системное событие автогенерации, которое позаботится об уникальности.
Делал так, в настройках отключал транслитерацию. И в консоли переобход делал, но проблема в том, что некоторые ресурсы не сохраняли новые алиасы по какой то не ведомой пока причине. На пример страница "услуги" - пробовал даже из базы перезаписать кириллицей, без полезно при обновлении URI все удаляется.. остается только "/"
Нажимаю сохранить, пишет над алиасом "Это поле обязательно для заполнения".. ввожу на кириллице "услуги" нажимаю сохранить, сохраняется, перезагружается и очищается поле алиас..в бд поле тоже пустое. Заморозка выключена.
Что удивительно аналогичная страница, нажимаю сохранить, без проблем генерирует новый алиас на кириллице и сохраняется спокойно.
Услуги является контейнером..внутренние ресурсы так же не сохраняются
exedis: т. е. проблема с конкретной «веткой» ресурсов? Может, плагин какой-то навешан? Или сайт «чужими людьми» не создавался и весь код под вашей ответственностью?
Сейчас еще проверил. Не только с конкретной веткой. Есть ветки где сохраняется, есть которые не сохраняется. Пробовал даже через консоль перезаписывать алиасы..брал имя страницы удалял лишние символы потом записывал в алиас.. Далее запускал перегенерацию URI.. модх выдавал ошибки dublicat и т.д. и перезаписывал на латинские алиасы, не которые uri оставлял пустыми. Весь код под моей ответственностью.
exedis: а вот этот modx.translit.modTransliterate в friendly_alias_translit_class вы откуда взяли? По умолчанию там другой класс: translit.modTransliterate.
возможно.. пробовал и кириллические и латинские символы вместо цифр вписывать все прекрасно работает.. Так же пробовал делать свою очистку слов от пробелов и символов, и последующей вставкой в алиас результат опять печальный, вставились опять только выборочно..мистика