Добрый день!
Создал копию модуля ps_categorytree.
Переименовал класс модуля, переименовал имена конфигурационных полей в которых хранятся настройки модуля.
Вот часть класса модуля с методом install() :
if (!defined('_PS_VERSION_')) {
exit;
}
use PrestaShop\PrestaShop\Core\Module\WidgetInterface;
class Ps_CategoryTreeCatalogue extends Module implements WidgetInterface
{
public function __construct()
{
$this->name = 'ps_categorytree_catalogue';
$this->tab = 'front_office_features';
$this->version = '2.0.0';
$this->author = 'PrestaShop';
$this->bootstrap = true;
parent::__construct();
$this->displayName = $this->getTranslator()->trans('Category tree links FOR PAGE CATALOGUE', array(), 'Modules.Categorytree.Admin');
$this->description = $this->getTranslator()->trans('Adds a block featuring product categories. FOR PAGE CATALOGUE', array(), 'Modules.Categorytree.Admin');
$this->ps_versions_compliancy = array('min' => '1.7.1.0', 'max' => _PS_VERSION_);
}
public function install()
{
return parent::install()
&& Configuration::updateValue('BLOCK_CATEG_MAX_DEPTH_CATALOGUE', 4)
&& Configuration::updateValue('BLOCK_CATEG_ROOT_CATEGORY_CATALOGUE', 1)
&& $this->registerHook('displayLeftColumn');
}
...
Переименовал Ps_CategoryTree на Ps_CategoryTreeCatalogue, а также 'BLOCK_CATEG_MAX_DEPTH' на 'BLOCK_CATEG_MAX_DEPTH_CATALOGUE' и 'BLOCK_CATEG_ROOT_CATEGORY' на 'BLOCK_CATEG_ROOT_CATEGORY_CATALOGUE' .
При установке пишет , что модуль не может быть ДЕИНСТАЛЛИРОВАН.
То есть видимо при установке модуля метод install() возвращает false и модуль кидает на деинсталляцию.
Пробовал делать так:
public function install()
{
return parent::install()
&& Configuration::updateValue('BLOCK_CATEG_MAX_DEPTH_CATALOGUE', 4)
&& Configuration::updateValue('BLOCK_CATEG_ROOT_CATEGORY_CATALOGUE', 1);
//&& $this->registerHook('displayLeftColumn');
}
но та же ошибка.
А в логах сервера никаких ошибок нет.
Вроде все нормально должно быть, но уже 3 день вожусь