Модуль YandexCMSModule Prestashop

Поставил php 5. Модуль установился, но показал ошибки:
  1. yandexmodule (разбор ошибки в /modules/yandexmodule/yandexmodule.php),
  2. yandexmodule (класс отсутствует в /modules/yandexmodule/yandexmodule.php)
И в списке модулей его нет, однако на сервере папка была создана.

Почистил кеш, обновил, модуль появился. Жму установить, появляется ошибка на белом экране:
[PrestaShop] Fatal error in module file :/home/srv162638/site.ru/classes/module/Module.php:
Uncaught exception 'ReflectionException' with message 'Class AdminOrdersControllerOverrideOriginal_remove5e3592a968a9c does not exist' in /home/srv162638/site.ru/classes/module/Module.php:2944 Stack trace: #0 /home/srv162638/site.ru/classes/module/Module.php(2944:( ReflectionClass->__construct('AdminOrdersCont...') #1 /home/srv162638/site.ru/classes/module/Module.php(2749:( ModuleCore->removeOverride('AdminOrdersCont...') #2 /home/srv162638/site.ru/classes/module/Module.php(347:( ModuleCore->uninstallOverrides() #3 /home/srv162638/site.ru/classes/PaymentModule.php(38:( ModuleCore->install() #4 /home/srv162638/site.ru/modules/yandexmodule/yandexmodule.php(153:( PaymentModuleCore->install() #5 /home/srv162638/site.ru/controllers/admin/AdminModulesController.php(868:( YandexModule->install() #6 /home/srv162638/site.ru/controllers/admin/AdminModulesController.php(1117:( AdminModulesControllerCore->postProcessCallback() #7 /home/srv162

Буду признателен если кто-то возьмется исправить проблему. Модуль нужен только из-за метрики, чтобы вручную не не устанавливать цели. На маркет выгружаю через другой модуль, эквайринг через сбер.
 
Последнее редактирование:
Добрый день. Подскажите, пожалуйста, как изменить функционал скрипта таким образом, чтоб в YML файле в теге <description> шло сначала короткое описание (description_short), а потом, при наличии, полное (description)? Сейчас вроде бы всё наоборот.

Я добрался до файла "modules/yandexmodule/classes/Models/MarketModel.php", строка 583:
PHP:
            ->setDescription($product['description'] ?: $product['description_short'])

Но тут мои и без того полудохлые познания php и вовсе сдались, не могу понять как сделать...

Дело в том, что у меня верстка таким образом, что техническая информация в description_short, а описание в description. И нужно чтоб они просто шли друг за другом в Турбо-страницах яндекса, иначе половина инфы теряется.

Возможно ли вообще это? Очень уж нужно.
 
Добрый день. Подскажите, пожалуйста, как изменить функционал скрипта таким образом, чтоб в YML файле в теге <description> шло сначала короткое описание (description_short), а потом, при наличии, полное (description)? Сейчас вроде бы всё наоборот.

Я добрался до файла "modules/yandexmodule/classes/Models/MarketModel.php", строка 583:
->setDescription($product['description'] ?: $product['description_short'])[/PHP]

Но тут мои и без того полудохлые познания php и вовсе сдались, не могу понять как сделать...

Дело в том, что у меня верстка таким образом, что техническая информация в description_short, а описание в description. И нужно чтоб они просто шли друг за другом в Турбо-страницах яндекса, иначе половина инфы теряется.

Возможно ли вообще это? Очень уж нужно.
Попробуйте так. При наличии короткого описания, оно будет выводится, иначе полное описание
PHP:
 ->setDescription($product['description_short'] ? $product['description_short'] : $product['description'])
 
Последнее редактирование:
Не получилось, выводится только краткое описание.
При наличии короткого описания, будет выводится короткое + полное описание, иначе полное описание
PHP:
->setDescription($product['description_short'] ? $product['description_short'] . $product['description'] : $product['description'])
 
Последнее редактирование:
При наличии короткого описания, будет выводится короткое + полное описание, иначе полное описание
PHP:
->setDescription($product['description_short'] ? $product['description_short'] . $product['description'] : $product['description'])
Отлично, всё работает, выводятся оба описания, спасибо большое! А как можно реализовать условие "При наличии длинного выводим короткое + длинное, иначе только короткое? Дело в том, что короткое есть в 100% случаев, а вот длинное пока не всегда. Верна ли следующая конструкция:
PHP:
->setDescription($product['description'] ? $product['description_short'] . $product['description'] : $product['description_short'])
Попробовал в живую, всё работает корректно и без ошибок
 
Последнее редактирование:
Ошибка из-за версии PHP, измените на 5-ю версию
этот модуль прекрасно работает и на php 7.0 и на 7.1
а часть по метрике работает странно, все равно пришлось прописывать код в шаблон, но цели начали работать
 
Доброго дня! Не получается решить проблему с модулем. Устанавливаю последнюю версию с гитхаба. При установке через админ-панель возникает ошибка

Раздел модули после этого не работает, белый экран и эта надпись, пока не удалить через фтп папку yandexmodule. Может кто сможет помочь с установкой модуля, за вознаграждение?
Версия PS 1.6.1.24
PHP 7.0.32
Там надо добавить проверку на пустой массив. Версию пыхи не обязательно менять. А лучше вообще не переходить с 7 на 5. Покажите что в строке 1361 написано, посмотрим.
 
Там надо добавить проверку на пустой массив. Версию пыхи не обязательно менять. А лучше вообще не переходить с 7 на 5. Покажите что в строке 1361 написано, посмотрим.

Содержание строки:
Код:
 if (eval('if (false){    '.$file."\n".' }') !== false) {
                        require_once(_PS_MODULE_DIR_.$module.'/'.$module.'.php');
                    } else {
                        $errors[] = sprintf(Tools::displayError('%1$s (parse error in %2$s)'), $module, substr($file_path, strlen(_PS_ROOT_DIR_)));
                    }
 
Назад
Сверху