Диана
30 нояб. 2018 г., 11:27

Ошибка загрузки class miniShop2

В блоге Песочница

Доброго дня. Может кто-нибудь подскажет как можно решить проблему:
дефолтный скрипт minishop2 начал загружаться на страницу только после добавления товара в корзину. Причем после первого добавления товара страница перезагружается, и только потом все работает по стандарту.
В логах:

[2018-11-30 13:44:15] (ERROR @ /home/site39/site.ru/docs/core/xpdo/xpdo.class.php : 503) Path specified for package minishop2 is not a valid or accessible directory: /home/site39/site.ru/docs/core/components/minishop2/model/
[2018-11-30 13:44:15] (ERROR @ /home/site39/site.ru/docs/core/xpdo/xpdo.class.php : 644) Could not load class: miniShop2 from minishop2.
[2018-11-30 13:44:15] (ERROR @ /home/site39/site.ru/docs/core/xpdo/xpdo.class.php : 1247) Problem getting service miniShop2, instance of class miniShop2, from path
[2018-11-30 13:44:16] (ERROR @ /home/site39/site.ru/docs/core/xpdo/xpdo.class.php : 503) Path specified for package minishop2 is not a valid or accessible directory: /home/site39/site.ru/docs/core/components/minishop2/model/
[2018-11-30 13:44:16] (ERROR @ /home/site39/site.ru/docs/core/xpdo/xpdo.class.php : 644) Could not load class: miniShop2 from minishop2.
[2018-11-30 13:44:16] (ERROR @ /home/site39/site.ru/docs/core/xpdo/xpdo.class.php : 1247) Problem getting service miniShop2, instance of class miniShop2, from path
[2018-11-30 13:44:17] (ERROR @ /home/site39/site.ru/docs/core/model/modx/modcachemanager.class.php : 344) Error caching lexicon topic lexicon/en/core/default

Переустановила, почистила кеш, сейчас в логах - пусто. Но дефолтный скрипт минишоп все также появляется в футере только после добавления товара. Может в базе сохранились данные, которые не удаляются при удалении плагина? Если да, то можно ли как-то массово ее почистить?
Диана, перепроверьте свой шаблон миникорзины. Скорее всего у вас по условию выводится минишоп только в случае наличия товара. То есть, на сколько я помню, он просто так не выводит свои скрипты, обязательно на странице должен быть тег, иначе никакие скрипты на страницу не выводятся. Самый простой способ проверить: добавить товар в корзину, обновить страницу (убедиться, что все необходимые скрипты выводятся), затем в шаблоне закомментировать те блоки, где выводятся данные корзины, обновить страницу, и убедиться, что минишоповские скрипты перестали выводиться на странице. Здесь принцип - не поломаешь, не сделаешь. Если ожидаемо скрипты перестали выводиться, возвращаете шаблон в нормальное состояние и смотрите уже сам чанк миникорзины (или шаблона, в общем того, где используется блок, от которого появляются или пропадают скрипты), пытаетесь найти условие для товара и без, и комментируете тот блок, который выводится, когда товар есть. Комментируете и обновляете страницу, убеждаетесь, что скрипты перестали выводиться. Задача всего этого - найти блок, который отвечает за вывод скриптов и по какому он условию выводится. Надо сделать так, чтобы выводился он без условия. Я не уверен, но скорее всего проблема чиста на уровне шаблонизации.

Добавить комментарий