Нашел корень всех своих бед с синонимами страниц. В предыдущих записях моего блога есть много информации благодаря комментариям, необходимой для достижения идеального перфектционизма при создании синонимов. Но все рушится на мультиязычном сайте (i18n).
Как должно быть (если я правильно понимаю).
Синоним можно создать на одном из языков (в моем случае en или ru) и он будет работать только для одного языка. Или с языком ВСЕ и будет работать и так. Правильно?
Проблема.
Сохранение с языком ВСЕ отпадает, т.к. создавая дубликат ноды для первода к ней не прицепляется аналогичный синоним.
Сохранение синонимов для разных языков меня вполне устраивает и кажется логичным. Было бы здорово сохранить ноду на русском с айдишником 65 и указать один синоним. Затем добавить перевод с айдишником 66 и сохранить с английским синонимом. На деле первая часть работает, но когда создаем дубликат, портится первый синоним (меняет айдишник с 65 на 66). Имеем два одинаковых синонима для второго языка.
Еще большая проблема.
Оставим идею вводить синонимы при добавлении/редактировании и будем вводить их из админки. Там можно выбрать язык и работать с айдишниками. Все ок. Но блин! Если после ввода синонима отредактировать ноду, то при сохранении синоним снова исчезает.
Сейчас мне кажется, что тут абсолютная каша и сплошняком все в багах :(, ибо даже четко сформулировать проблемы не получается из-за различного порой поведения :(.
Подскажите, пожалуйста, хоть частичное решение проблем. Буду рад каждой идеи, каждой мелочи
Комментарии
ну и геморой) я что-то не совсем понимаю зачем всё это? опиши нормальным языком на примере одной ноды как она должна отображаться для пользователей с разным языком.
ru en
путь
название
часть-текста
Изначально моя тема хотелось бы. Но все упирается в косяки мультиязычности при сохранении.
Сейчас хочу хоть как-нибудь решить проблему
Хочу такие адреса нод:
http // sitename / ru / catalog / second developer components / class 2 / component name
http // sitename / en / catalog / second developer components / class 2 / component name
Пусть первая с айдишником 65, вторая с 66. Ну связаны как переводы по идеологии i18n. Едиснтвенное, что мне удается сделать это вручную вводить синонимы через админку, а не при создании ноды. Так как там можно уазать язык. И больше не трогать эту ноду :).
Часть проблемы еще в том, что сами синонимы одинаковы. Отличаются только профексами en и ru. При вводе на странице ноды друпал просто сходит с ума
Как минимум хочу найти настройку, которая при редактировании ноды ничего не делает с синонимом. Т.е. вбили синоним один раз из админки и пусть он себе висит
ну, если я правильно понял, делаешь поле в ноде типа "язык" с двумя вариантами en либо ру. в pathauto настраиваешь шаблон, который будет выводить значение поля в путь + дополнительное содержимое пути добавляешь
Я так понял вы предлагаете принудительно добавлять префиксы en и ru в синоним. К сожалению так не получится, ибо аллиас сам по себе не должен содержать эти префиксы. Я себе представляю, что это что-то вроде внешнего параметра синонима.
Здравое зерно в таком подходе это научиться указывать язык при добавлении синонима на страницы. Более того, на логическом уровне информации достаточно, т.к. при добавлении ноды указывается язык. Выход, мне кажется, ковырятся в коде модуля path и искать кусок где добавляется аллиал и что там есть с языками.
А в чем, простите, сермяжный смысл для русскоязычной страницы строить алиас с английскими словами?
Не нравятся русские адреса
И комбинированные уж тем более.
Если сайт у нас .рф/ ... то да, русские в тему, но тут как-то кривовато.
Так чувствется гормония, единообразность. Бывает находишь что-нибудь на английской википедии, правишь en на ru в адресе и радуешься переходу
Версию друпала в студию
Drupal 6.22
Прекрасно вас понимаю, сама столкнулась с такой же проблемой. Увы, решения пока не нашла! Если появятся идеи, пишите!))