Обновление с miniShop2 2.2.0 pl2 до 2.4.16-pl и lexicons

Здравствуйте. Проблема после обновления в чанке github.com/bezumkin/miniShop2/blob/master/core/components/minishop2/elements/chunks/chunk.ms_product_content.tpl
Есть 2 контекста web и ru
К контексте web все записи из словаря выводятся как полагается

А в контексте ru следующие записи не выводятся (да только эти 4) С остальными все в порядке.
ms2_frontend_add_to_cart
ms2_frontend_weight_unit
ms2_frontend_count_unit
ms2_frontend_currency

В словаре записи присутствуют для обоих языков (en и ru)
Шаблоны для обоих контекстов используются одинаковые.
в журнале Error caching lexicon topic lexicon/ru/core/resource
Права на папки стоят правильные
Куда смотреть?

И немного любопытства, почему все чанки ms2 на fenom, кроме этого ms_product_content.tpl чем он такой особенный?
Алексей
28 декабря 2018, 13:00
modx.pro
942
0

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

Алексей
28 декабря 2018, 13:51
0
А собственно проблеме уже больше года скоро в садик пойдёт.
    Василий Наумкин
    28 декабря 2018, 14:00
    0
    Надеюсь, ты понимаешь, что работа с лексиконами — она реализуется ядром, а не дополнениями?

    Ну и целых 2 вопроса за год, это прям чудовищный масштаб. В твоей ссылке прямо говорится, где именно проблема:
    Если вычистить весь кеш, то проблема временно исчезает и MiniShop становиться русским, но как -то вдруг всё что на скринах возвращается в рандомном порядке.
    Возможно, там вообще какой-нибудь криво настроенный Memcache или еще что-нибудь в этом духе.

    Собственно, и ты у себя видишь запись в логе про ошибку с кэшем.

    И немного любопытства, почему все чанки ms2 на fenom, кроме этого ms_product_content.tpl чем он такой особенный?
    Тем, что он обрабатывается напрямую парсером сайта, без сниппетов — а работа Fenom на страницах сайта по умолчанию отключена. Всё должно работать из коробки, потому так.
      Алексей
      28 декабря 2018, 14:16
      0
      Надеюсь, ты понимаешь, что работа с лексиконами — она реализуется ядром, а не дополнениями?
      Понимаю, не понимаю почему только минишоп и только после его обновления.
      (у меня, как и у других чистка кеша ничего не дает, и лексикон не выводится постоянно, кеш файловый)
      Ошибки в журнале после очистки больше нет, видимо к чему-то другому относилась.

      Видимо ссылку надо было не на топик давать, а на комменты в нём modx.pro/help/12469#comment-86590 там не один вопрошающий про такую проблему
        Василий Наумкин
        28 декабря 2018, 14:22
        0
        Для начала, проверь свои настройки кэширования в системе. И удали полностью core/cache.

        Я даже не представляю, как можно что-то сломать в лексиконах, учитывая, что это просто набор файлов, которые читает движок.
          Алексей
          28 декабря 2018, 14:33
          0
          Это всё уже делал и не раз.
          Полностью отключил кеширование лексиконов и ничего не поменялось
          (с удивлением обнаружил отсутствие в новой версии modx настройки cache_disabled)
          ps есть же даже скрины с повторением проблемы на вашем хостинге, вряд ли же там проблемы с кешированием?
            Василий Наумкин
            28 декабря 2018, 15:13
            0
            вряд ли же там проблемы с кешированием?
            У меня там проблем с кэшированием никаких нет.

            Повторите свою проблему на чистом сайте на modhost.pro, дайте логин-пароль, вместе разберёмся.

            Я же не отрицаю, что проблема может быть. Просто нельзя исправить то, чего не видишь.
              Алексей
              28 декабря 2018, 16:34
              0
              s16888.h5.modhost.pro/888.html
              s16888.h5.modhost.pro/ru/goodsru.html
              Логин s16888
              Пароль jZN5em02gQM3
                Василий Наумкин
                28 декабря 2018, 17:18
                +1
                Теперь понятно, в чём проблема. Класс miniShop2 грузится один раз при инициализации MODX и тогда же загружает лексикон.

                После переключения контекста он это второй раз не делает. Вот исправление, уже в новой версии.
                  Алексей
                  02 января 2019, 15:57
                  0
                  :D Может ли быть что-то подобное с корзиной?
                  В контексте web кнопка «Очистить корзину» работает, а в ru просто перезагружает страницу. Никаких ошибок в консоли при этом нет. Шаблоны одинаковые…
                    Василий Наумкин
                    02 января 2019, 17:32
                    0
                    Если просто перезагружает, значит что-то не то с javascript. Возможно, он не подключается на страницу или не срабатывает.

                    Дай ссылку посмотреть на проблему
                      Алексей
                      02 января 2019, 18:20
                      0
                      Это опять придется на хостинге заново делать с контекстами, ну нафиг) Попробую разобраться.
                      Алексей
                      03 января 2019, 09:45
                      0
                      Оказалось, что кнопка «Очистить корзину» в контексте ru, не просто перезагружает страницу, а очищает корзину в контексте web :-)))
                      Алексей
                      04 января 2019, 11:57
                      0
                      В обшем в изначальном чанке кнопка выглядит так и работает некорректно
                      <form method="post">
                                  <button class="btn btn-default" type="submit" name="ms2_action" value="cart/clean">
                                      <i class="glyphicon glyphicon-remove"></i> {'ms2_cart_clean' | lexicon}
                                  </button>
                      </form>
                      Изменил
                      <form method="post">
                      на
                      <form method="post" class="ms2_form">
                      Не уверен, что это корректное решение, но по крайней мере рабочее.
              Алексей
              28 декабря 2018, 16:43
              0
              Ещё по ходу пьесы появился вопрос, можно создать категорию товаров и там товар, а можно создать просто Товар (без категории) и тогда он выводится только во фронте, в админке в дереве его не вижу.
              Что за чудо?
                Василий Наумкин
                28 декабря 2018, 17:25
                0
                По умолчанию товары miniShop2 в дереве не показываются — там есть такая галочка, которую можно включить. Или активировать системную настройку ms2_product_show_in_tree_default.

                А потерянный ресурс можно открыть или через поиск, или по ссылке через id.
                  Алексей
                  28 декабря 2018, 17:34
                  0
                  Теперь понятно. Тыкал-тыкал — ничего. Оказалось — работает только для вновь создаваемых товаров. Старые так остались скрыты. (это не претензия, просто записал, чтобы не потерять)
                Алексей
                05 января 2019, 15:52
                0
                доступы modx.pro/help/17256
          Алексей
          04 января 2019, 18:20
          0
          Василий, может помните как в старых версиях расширялись поля профиля покупателя?
          Нашел эту ссылку
          bezumkin.ru/sections/components/1656/
          в ней есть ссылка
          Этот объект расширяется плагинами MS2
          которая ведет не туда, куда хотелось бы.
          Неприятность в том, что после обновления ms2 и msProfile не работают реферальные ссылки.
          То есть при переходе по ссылке кука пишется (и даже ведется подсчет переходов дописанный отдельно)
          но при регистрации к этому пользователю не записывается рефферер.
          Когда пользователь совершает покупку, сумма списывается с баланса, но не записывается в поле spent и т.д.
          Всё, что нашел это измененные
          assets/components/msprofile/js/mgr/widgets/profiles.grid.js
          assets/components/msprofile/js/mgr/widgets/profile.window.js
          их переписал под новую версию и в админке все поля появились

          Нашел ещё файл
          components/minishop2/plugins/reffereraccount/reffereraccount.js
          и пытаюсь понять как он подключался, чтобы найти ошибку или хотя бы задать направление мысли, но не могу найти информации.

          В журнале единственная ошибка по делу
          Array
          (
              [0] => 42000
              [1] => 1064
              [2] => You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'AS `modAccess` WHERE `modAccess`.`principal` = 1766' at line 1
          )
          1766 — это как раз id нового пользователя, что за поле principal не знаю.

          Любая помощь приветствуется!
            Алексей
            04 января 2019, 18:43
            0
            Ошибка оказалась тоже не по делу, она от удаления пользователя из админки
              Алексей
              04 января 2019, 19:01
              0
              Поставил на всякий случать msprofile чистую без своих изменений и плагин ms2 тоже.
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          20