Щоб створити Basic модуль Magento 2 , вам потрібно лише 2 файли: module.xml та registration.php.

1. Спочатку створіть папка модулів :

app/code/<VendorName>/<ModuleName>/

та папку, яка міститиме файли конфігурації модуля:

app/code/<VendorName>/<ModuleName>/etc/

Якщо папка app/code відсутня у вашій інсталяції Magento 2, створіть її.

2. Помістіть файл module.xml з наступним вмістом у папку app/code/ / /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="VendorName_ModuleName" setup_version="2.0.0">
        <sequence>
            <module name="Magento_Cms"/>
            <module name="Magento_Catalog"/>
        </sequence>
    </module>
</config>

послідовність не є обов'язковим елементом і призначена для визначення модулів, від яких залежить ваш модуль. Якщо залежності невідомі, їх можна вказати пізніше.
setup_version — визначає поточну версію модуля.

3. Створіть файл registration.php та помістіть його в папку app/code/<VendorName>/<ModuleName>/.

<?php

\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::MODULE,
    'VendorName_ModuleName',
    __DIR__
);

У прикладах ми створимо модуль Magefan_Faq для Часто задаваних питань (FAQ).

Результуюча структура модуля виглядатиме так:

├── app
│   └── code 
│        └── Magefan // назва розробника - VendorName
│            └── Faq
// назва модуля - ModuleName
│                ├──
etc
│                │   └──
module.xml
│                │
│                └──
registration.php

На GitHub ви можете переглянути файли модуля Magefan_Faq модуль.

Після створення цих 2 файлів зареєструйте модуль у системі. Відкрийте CLI (термінал, командний рядок), потім перейдіть до кореневої папки Magento 2 та виконайте таку команду:

php bin/magento setup:upgrade

Вона перевіряє наявність нових та оновлених системних компонентів (модулів, тем, мовних пакетів), встановлює та оновлює їх.

Ви можете перевірити, чи модуль встановлено та ввімкнено, у цьому файлі

app/etc/config.php

у ньому має бути наступний рядок

'VendorName_ModuleName' => 1

Ми створили найпростіший модуль для Magento 2. Це окремий блок, хоча він ще не має жодної функціональності.

Детальніше про .