Коварная война россии против Украины. Ориентировочные потери врага
(по состоянию на 21.05.2022)
28850
солдат
204
самолетов
169
вертолетов
1278
танков
3116
ББМ
596
артиллерия
93
ПВО
201
РСЗО
2178
машин
13
корабли и катера
Как создать простой модуль в Magento 2

Как создать простой модуль в Magento 2

В этом уроке мы создадим самый простой модуль в Magento 2. Это будет только каркас, который мы будем достраивать и развивать в дальнейших уроках.

 

Прежде чем мы начнем разработку простого модуля Magento 2, есть две вещи, о которых многие забывают:

 

  1. Отключить кеш Magento 2

Отключение кеша Magento 2 во время разработки поможет сэкономить время, потому что вам не нужно вручную очищать кеш каждый раз, когда вы вносите изменения в код.

Самый простой способ отключить кеш – перейти в Admin → System → Cache Management → выбрать все типы кеша и установить для них Disable.

Либо вы можете набрать в консоли следующую команду (как работать с консолью, вы можете посмотреть в этом уроке):

php bin/magento cache:disable

 

 

  1. Переведите Magento 2 в режим разработчика

Вы должны перевести Magento 2 в режим разработчика, что позволит вам видеть все ошибки во время разработки.

Для этого откройте консоль и из корня сайта выполните следующую команду:

php bin/magento deploy:mode:set developer

 

 

Создание каркаса для модуля в Magento 2

Если вы ранее работали с Magento версий 1.х, вы использовали среду разработки – core, community и local, которые находились в папке app/code. В Magento 2 больше нет такого понятия. Модули сгруппированы по пространству имен (Vendor) и помещены непосредственно в папку app/code.

Поэтому наш первый шаг – создать папку модуля и необходимые файлы, которые нужны для регистрации модуля в платформе Magento 2.

 

 

  1. Создайте следующие папки:
app/code/Sebweo
app/code/Sebweo/Helloworld

 

Папка Sebweo – это пространство имен модулей (Vendor, т.е., производитель), а Helloworld – это название самого модуля.

Примечание. Если у вас нет папки code в папке app, создайте ее вручную.

 

Чтобы создать самый простой модуль в Magento 2, нужны только два файла: module.xml и registration.php. Рассмотрим это дальше.

 

 

  1. Файл определения модуля – module.xml

Теперь, когда у нас есть папка с модулем, нам нужно создать файл 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>

 

  • Замените Vendor на свое пространство имен, в нашем примере – это Sebweo. А ModuleName на название модуля, в нашем примере – это Helloworld.
  • Значение в ноде setup_version указывает на текущую версию модуля. Вы можете использовать любое цифровое значение.
  • Значение в ноде sequence не является обязательным элементом. Его используют, когда ваш модуль зависит от других модулей в системе. В нашем примере модуль зависит от модуля Magento_Catalog.

 

 

 

  1. Файл регистрации модуля – registration.php

Чтобы зарегистрировать модуль в системе, создайте файл registration.php в папке app/code/Sebweo/Helloworld с таким содержимым:

<?php
\Magento\Framework\Component\ComponentRegistrar::register(
  \Magento\Framework\Component\ComponentRegistrar::MODULE,
  'Vendor_ModuleName',
  __DIR__
);

 

Замените Vendor на свое пространство имен, в нашем примере – это Sebweo. А ModuleName на название модуля, в нашем примере – это Helloworld.

 

 

  1. Очистка системы

Откройте консоль и из корня сайта с 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. Он уже присутствует в системе, но пока ничего полезного не делает. В следующих уроках мы будем наполнять его полезным функционалом.

 

 

Добавить комментарий

Ваш адрес email не будет опубликован.