В этой статье хочу рассказать вам, как создать простой модуль для Prestashop версий 1.5 и 1.6
С помощью модуля вы сможете добавить дополнительный функционал к вашему магазину. А это например вывести в нужном месте изображение или слайдер изображений, важную информацию о вашем магазине и т.д
Давайте начнем писать наш первый модуль, для начала перейдите в папку modules/ и там создайте новую папку "mymodule". Переходим в созданную вами папку, далее там создаем очень важный файл модуля "mymodule.php", стоит обратить внимание, что этот очень важный файл модуля должен называться также, как и папка этого модуля, то есть "mymodule".
Так отлично, здесь мы разобрались, что к чему. Двигаемся дальше, ниже я привел пример содержимого файла "mymodule.php", простой пример, как он обязательно должен выглядеть изнутри.
<?php
class MyModule extends Module
{
public function __construct() {
$this->name = 'mymodule'; //Название модуля, должно совпадать с название папки модуля
$this->tab = 'front_office_features'; //Категория к которой относится модуль
$this->version = '1.0.0'; //Версия модуля
$this->bootstrap = 1; //Обязательно нужно указать если вы разрабатываете модуль по 1.6
$this->author = 'DaRiuS'; //Имя или ник автора модуля
parent::__construct();
$this->displayName = $this->l('My Module'); //Название модуля
$this->description = $this->l('My Module'); //Описание вашего модуля
}
public function install()
{
if (!parent::install() ||
!$this->registerHook('displayHome'))
return false;
return true;
}
public function hookDisplayHome()
{
return $this->display(__FILE__, 'home.tpl');
}
}
1. имя модуля(совпадает с названием папки)
2. к какой категории принадлежит модуль $this->tab = \'front_office_features\';
3. версия модуля, обязательно должна быть в таком формате 1.0.0
4. $this->bootstrap = 1 этот параметр вашего модуля явно указывает, что ваш интерфейс настроек модуля поддерживает bootstrap
5. автор модуля
6. название модуля, которое будет отображаться в списке модулей в админке вашего магазина
7. описание модуля, которое также будет отображаться в списке ваших модулей
Далее, разберем метод модуля install, который срабатывает во время установки модуля, здесь вы можете писать любой код, который должен выполнится в тот момент когда модуль будет устанавливаться. Здесь мы добавили такой код $this->registerHook(\'displayHome\')
,
public function hookDisplayHome ,registerHook добавляет модуль в расположения, по другому называются Hook(Хук). Хук
displayHome
находится на главной странице. Сам код хука находится находится ниже по коду
в этом хуке мы возвращаем шаблон home.tpl полученный с помощью вызова метода display.Сам шаблон home.tpl хука должен быть расположен в папке с модулем mymodule/views/templates/hook/home.tpl
Hello Prestashop!
А теперь важный момент, модуль который вы создали теперь нужно установить в вашем магазине. Для этого в админ панели перейдите на вкладку модули, найдите ваш модуль по названию папки или по названию который вы указали в свойстве класса:
->displayName
Нажмите кнопку установить модуль.
Магазин сообщит вам о том что ваш модуль был успешно установлен.
В данном примере мы зарегистрировали хук модуля $this->registerHook(\'displayHome\') , который выводит свой контент на главной странице.
По этой ссылке вы сможете скачать исходный код этого модуля