Заготовка PrestaShop модуля при помощи Генератора

Как быстро получить каркас вашего нового модуля? Воспользуйтесь для этого Module Generator.

Заготовка PrestaShop модуля при помощи Генератора

Для ускорения и автоматизации процесса разработки модуля для интернет-магазина на движке Престашоп можно сгенерировать базовый каркас модуля с помощью замечательного инструмента Module Generator.

Это официальный генератор модулей, который самостоятельно создаёт корректную структуру модуля. Вам остаётся лишь указать названия и добавить свои функции.

Зайдите на страницу PrestaShop Validator https://validator.prestashop.com/auth/login, войдите или зарегистрируйтесь и перейдите на вкладку Module Generator.

Генератор модулей Престашоп

Инструкция: Генератор модуля Престашоп

Шаг 1

  • Тип модуля: в какой категории модулей он будет отображаться в админке:

    Generic module
    Payment module
    Shipping module
    Service module

    Общий модуль
    Платежный модуль
    Модуль доставки
    Сервисный модуль

    Н-р, выбираем: Generic module.

  • Module tab: название раздела, который будет содержать этот модуль в списке модулей бэк-офиса PrestaShop.

    Выбираем: Front Office Features

    Вы можете использовать существующее имя, например, seo front_office_featuresили analytics_stats, или пользовательское. В этом последнем случае будет создан новый раздел с вашим идентификатором. Мы выбираем « front_office_features», потому что этот первый модуль в основном будет влиять на внешний интерфейс.

    Список разделов в Документации:
    https://devdocs.prestashop.com/1.7/modules/creation/

    Administration
    Advertising and Marketing
    Analytics and Stats
    Billing and Invoicing
    Checkout
    Content Management
    Emailing
    Export
    Front Office Features
    Internationalization and Localization
    Marketplace
    Merchandizing
    Migration Tools
    Mobile
    Other Modules
    Payment Security
    Payments and Gateways
    Pricing and Promotion
    Quick / Bulk update
    SEO
    Search and Filter
    Shipping and Logistics
    Slideshows
    Smart Shopping
    Social Networks

    Администрирование
    Реклама и маркетинг
    Аналитика и статистика
    Выставление счетов
    Оформление заказа
    Управление содержанием
    Отправки по электронной почте
    Экспорт
    Характеристики фронт-офиса
    Интернационализация и локализация
    Маркетплейс
    Мерчендайзинг
    Инструменты миграции
    Мобильный
    Другие Модули
    Безопасность платежей
    Платежи и шлюзы
    Ценообразование и продвижение
    Быстрое / Массовое обновление
    SEO
    Поиск и фильтр
    Доставка и логистика
    Слайдшоу
    Смарт Шоппинг
    Социальные сети

    Мерчендайзинг - оптимизация системы торговли, связанная с подготовкой товаров, их рекламой, а также стимулированием торговой деятельности (ценовые скидки, льготы, премии и т. п.).

  • Имя модуля: имя модуля, соответствующее имени его папки и основного php файла.

  • Название модуля: наименование, которое будет отображаться в бэк-офисе (на странице «Модули»).

  • Описание: описание модуля то же, что и в основном php файле.

  • Автор: ваше имя или название сайта.

  • Версия совместимости: оставляем 1.0.0.

Для примера:

Имя модуля: blockcallback

Название модуля: Сallback order

Описание модуля: Сalling a callback order form.

Автор: PrestaShop

Версия совместимости: 1.0.0

Шаг 2

  • Сообщение о подтверждении удаления модуля.
    Выбрать Да, если вы хотите отобразить подтверждающее сообщение, когда продавец пытается удалить модуль?
    В этом случае ввести сообщение: Are you sure you want to uninstall?
  • Создать таблицу базы данных по умолчанию.
    Выбрать Да, если вашему модулю нужна таблица базы данных.
    Пока выбираем: Нет.
  • Нужен экземпляр: открывать модуль сразу после его установки. Нужно ли загружать основной класс модуля на странице бэк-офиса "Модули"? Выбираем: Да
  • Минимальная версия совместимости с Prestashop
  • Максимальная версия совместимости с Prestashop

Шаг 3

В поле Хуки нужно выбрать из выпадающего списка хуки, которые будут зарегистрированы в модуле и в которых будет отображен наш модуль в фронт-офисе.

Здесь большой список хуков, но для теста вы можете выбрать внизу списка несколько хуков. В таблице представлена нижняя часть списка хуков:

Footer
Product footer
Pages header
Homepage content
Home Page Tabs
Home Page Tabs Content
Invoice
Left column blocks
New elements on the product page (left column)
Maintenance Page
displayMobileTopSiteMap
My account block
Navigation
Order confirmation page
Order detail
PDF Invoice
Payment
Payment return
Top of payment page
Product page actions
Extra product comparison
Display extra content on the product page
Display new elements in the Front Office, products list
displayProductListReviews
Tabs on product page
Tabs content on the product page
Right column blocks
New elements on the product page (right column)
Shopping cart - Add. button
Shopping cart footer
Top of pages
Top column blocks

Футер (нижний колонтитул)
Нижний колонтитул продукта
Заголовок (хедер) страницы
Содержание главной страницы
Вкладки Главной страницы
Содержание вкладок Глав. стр-цы
Счет-фактура
Левый столбец блоков
Новые элементы на странице товара (левая колонка)
Страница обслуживания
displayMobileTopSiteMap
Мой аккаунт заблокирован
Навигация
Страница подтверждения заказа
Детали заказа
PDF Счет
Оплата
Возврат платежа
Верх страницы оплаты
Действия на странице продукта
Доп. сравнение продуктов
Показать дополнительный контент на странице продукта
Отображать новые элементы в Front Office, списке продуктов
displayProductListReviews
Вкладки на странице товара
Вкладки на странице товара
Правые столбцы
Новые элементы на странице товара (правая колонка)
Корзина - Дополнительная кнопка
Нижний колонтитул корзины
Верх страниц
Верхние блоки столбцов

Для примера:

Создание модуля Престашоп

Если выбрать Pages header, Left column blocks и Top of pages, то в методе установки модуля будут зарегистрированы следующие хуки:

public function install()
{
Configuration::updateValue('BLOCKCALLBACK_LIVE_MODE', false);
return parent::install() &&
$this->registerHook('header') &&
$this->registerHook('backOfficeHeader') &&
$this->registerHook('displayHeader') &&
$this->registerHook('displayLeftColumn') &&
$this->registerHook('displayTop');
}

После нажатия на кнопку Создать можно будет скачать сгенерированный модуль.

Что делать с этой заготовкой?

Писать код модуля!

— Если ты новичок, прочитай статью с инструкцией по созданию модуля. В ней разбирается код модуля, выводящего на сайт блок текстовой информации.

— Хорошим путем будет взять любой из модулей PrestaShop, проанализировать, как он сделан, и подобным образом разработать свой функционал. Выбирать модуль нужно, близкий по типу решаемой задачи. Например, чтобы отобразить на сайте какой-нибудь текст, можно взять модуль ps_customtext и на его основе создать свой собственный модуль.

— Также этот сгенерированный модуль можно переписать как Widget. Пример такого модуля: ps_socialfollow. Кстати, в нем все данные записаны в таблицу базы данных ps_configuration.

Учтите, что Генератор создает переменные MYMODULE_LIVE_MODE, MYMODULE_ACCOUNT_EMAIL и MYMODULE_ACCOUNT_PASSWORD, и добавляет строки с ними в таблицу ps_configuration.

А вы пользуетесь Генератором модулей? Напишите в комментариях!

Веб разработчик MAKE-WEBSITE.ru
Автор
Подробнее
Геннадий Егупов

Создаю современные
высококонверсионные сайты

Кроссбраузернаяверстка
Созданиедизайнов
Интеграция с cmsMODx и PrestaShop
Разработка Vue.jsприложений
Прочитайте еще посты:

Оставьте свой комментарий!


Разрешённые теги: <b><i><br>


Комментарии (0)

 

Давайте общаться

Я хотел бы поговорить о вашем бизнесе, отправьте мне письмо на make.website.info@gmail.com.