Мультиязычность через контексты и работа ТВ

Не получается использовать ТВ привязанные к ресурсу и Bannery в мультиязычных сайтах сделанных через переключение контекстов.

Мультисайт на 2 контекстах, переключение плагином https://bezumkin.ru/sections/tips_and_tricks/2439/

default_media_source в системных настройках assets/uploads/
такой же используется в тв-шках — они формируются с путями уже images/image.jpg

Ну и обычный BannerY выводит путь через плейсхолдер [[+image]]

в результате ни баннеры ни ТВшки не грузятся с 404 ошибками

пути в Bannery fr/assets/uploads/images/image.jpg
в ТВ выводит images/image.jpg

т.е. в первом случае добавляет путь к контексту, хотелось бы решить это стандартными способами cms без nginx rewrite и т.п., во втором случае игнорируется mediasource

Просьба поделиться как решаете, или я что-то не то делаю?

Upd.
Поменял систему контекстов, убрал самописные скрипты поставил LangRouter. Многие проблемы отпали, бонусом определение языка браузера и подсовывание соответствующего языкового контекста.
Abu
Abu
09 января 2017, 03:02
modx.pro
2
2 484
0

Комментарии: 7

Владимир
09 января 2017, 10:22
0
Пути зависят от, например, путей в источниках файлов (тивишка может быть связана с конкретным источником или источником файлов по умолчанию). Далее, важно что указано в системной настройке
link_tag_scheme, я, например не использую относительные пути (link_tag_scheme = -1), а только полные (link_tag_scheme = full)
    Aртур Чикин
    09 января 2017, 11:49
    +1
    Как вариант вся вина тегу
    <base></base>
    а пути выстраиваются относительно этого тега, советую почитать про относительные и абсолютные пути в html
      Владимир
      09 января 2017, 14:59
      +1
      А я избавился от него (base) и всем того желаю — только полные ссылки!
      Именно на мультидоменных мультиконтекстных сайтах тэг base — зло! Два сайта отследил в качестве индексации после удаления этого тега- все путем. В контенте заменяю на полные пути replace -ом (феномом) прибавляя домен, тоже для Minify — там тоже replace -ом до полных ссылок. И для тега base относительных ссылок просто не остается. А плюс еще в том, что для мультиязычных не потребуется решать вопрос с site.ru/en/ — это (/en/) при использовании тега base вы получите и в путях картинок, что можно поправить плагином, но лучше просто используя PThumb + link_tag_scheme = full в настройках phpthumbof.cache_url указать домен (у меня превьюшки вынесены на суб.домен), отказаться от тега base и все, ни каких проблем с путями для картинок и файлов навсегда.
        Abu
        Abu
        09 января 2017, 15:55
        0
        Сайт на локальной виртуалке php7-fpm nginx. Похоже еще пару багов с дополнений словил, в общем главная проблема это вот эти (/en/) которые мешаются загрузке изображений, будь то через BannerY или TV.

        Пытаюсь на тяжелую уже голову вникнуть в ваше предложение в комментарии.
        Как переключать контекст без base вообще? У меня всё по мануалу
        <base href="/" />
        и link_tag_scheme = full

        Позже попробую воспользоваться вашим предложением с pThumb, похоже самый перспективный вариант.
          Владимир
          09 января 2017, 16:05
          0
          Обязательно, для превьюшек используйте pThumb (с ним в комплекте идет ресайзер, включите его в настройках, настройки смотрите pThumb и phpthumbof, так как pThumb создан как замена phpthumbof) в phpthumbof.cache_url укажите домен. Везде только полные пути.
          Если совсем не получится, то на локалтке тоже можно потыкаь через teamviewer.com/ например.
          PS
          Как переключать контекст без base
          — ну, как то 10 контекстов без него хорошо сейья чувствуют) Так что в топку тег base.
      Юрий
      29 августа 2017, 16:29
      0
      Удалось как-то решить проблему с bannerY и TV? Сейчас мучаюсь с той же фигней. Сначала с babel была проблема с ссылкой на украинский (прописали uk вместо ua). теперь это… Предложенное в комментах уже пробовал — не помогло.
        Abu
        Abu
        29 августа 2017, 23:06
        0
        Поменял систему контекстов, убрал самописные скрипты поставил LangRouter. Многие проблемы отпали, бонусом определение языка браузера и подсовывание соответствующего языкового контекста.
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        7