В этом уроке мы создадим самый простой модуль в Magento 2. Это будет только каркас, который мы будем достраивать и развивать в дальнейших уроках.
Прежде чем мы начнем разработку простого модуля Magento 2, есть две вещи, о которых многие забывают:
Отключение кеша Magento 2 во время разработки поможет сэкономить время, потому что вам не нужно вручную очищать кеш каждый раз, когда вы вносите изменения в код.
Самый простой способ отключить кеш – перейти в Admin → System → Cache Management → выбрать все типы кеша и установить для них Disable.
Либо вы можете набрать в консоли следующую команду (как работать с консолью, вы можете посмотреть в этом уроке):
php bin/magento cache:disable
Вы должны перевести Magento 2 в режим разработчика, что позволит вам видеть все ошибки во время разработки.
Для этого откройте консоль и из корня сайта выполните следующую команду:
php bin/magento deploy:mode:set developer
Если вы ранее работали с Magento версий 1.х, вы использовали среду разработки – core
, community
и local
, которые находились в папке app/code
. В Magento 2 больше нет такого понятия. Модули сгруппированы по пространству имен (Vendor) и помещены непосредственно в папку app/code
.
Поэтому наш первый шаг – создать папку модуля и необходимые файлы, которые нужны для регистрации модуля в платформе Magento 2.
app/code/Sebweo app/code/Sebweo/Helloworld
Папка Sebweo
– это пространство имен модулей (Vendor, т.е., производитель), а Helloworld
– это название самого модуля.
Примечание. Если у вас нет папки code
в папке app
, создайте ее вручную.
Чтобы создать самый простой модуль в Magento 2, нужны только два файла: module.xml
и registration.php
. Рассмотрим это дальше.
Теперь, когда у нас есть папка с модулем, нам нужно создать файл module.xml
в папке app/code/Sebweo/Helloworld/etc
с таким содержимым:
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"> <module name="Vendor_ModuleName" setup_version="1.0.0"> <sequence> <module name="Magento_Catalog"/> </sequence> </module> </config>
Sebweo
. А ModuleName на название модуля, в нашем примере – это Helloworld
.setup_version
указывает на текущую версию модуля. Вы можете использовать любое цифровое значение.sequence
не является обязательным элементом. Его используют, когда ваш модуль зависит от других модулей в системе. В нашем примере модуль зависит от модуля Magento_Catalog
.
Чтобы зарегистрировать модуль в системе, создайте файл registration.php
в папке app/code/Sebweo/Helloworld
с таким содержимым:
<?php \Magento\Framework\Component\ComponentRegistrar::register( \Magento\Framework\Component\ComponentRegistrar::MODULE, 'Vendor_ModuleName', __DIR__ );
Замените Vendor на свое пространство имен, в нашем примере – это Sebweo
. А ModuleName на название модуля, в нашем примере – это Helloworld
.
Откройте консоль и из корня сайта с Magento 2 запустите следующую команду:
php bin/magento setup:upgrade
Если после этого вы откроете сайт в браузере и увидите, что слетели стили, тогда дополнительно выполните в консоли и такую команду:
php bin/magento setup:static-content:deploy
Если вы хотите убедиться, что ваш новый модуль был успешно установлен, вы можете открыть файл app/etc/config.php
и проверить, что в массиве есть ключ «Sebweo_Helloworld
», а значение для него должно быть установлено в 1
.
Также вы можете использовать следующую команду из консоли:
php bin/magento module:status
Эта команда покажет вам список всех модулей в системе.
Вот и все! Сегодня мы создали самый простой модуль для Magento 2. Он уже присутствует в системе, но пока ничего полезного не делает. В следующих уроках мы будем наполнять его полезным функционалом.
Грехи других судить вы так усердно рветесь, начните со своих и до чужих не доберетесь… Read More
Люди, между которыми есть любовь и взаимопонимание, скрепляют отношения и зарождают новый союз, а дату… Read More
Для качественного SEO (поисковой оптимизации, раскрутки сайта) одним из важных показателей является Авторитет домена (Domain… Read More
Выяснение того, как вывести свои деньги с PayPal, является одним из первых вопросов, которыми озадачивается… Read More
Юбка – мощный элемент женского гардероба, благодаря которому любой наряд будет выглядеть потрясающе стильно и… Read More
Поисковые системы (например, Google) проверяют технические характеристики вашего сайта, такие как скорость загрузки, удобство навигации,… Read More