В цьому уроці ми створимо найпростіший модуль в 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>
Замініть Vendor на свій простір імен, в нашому прикладі – це 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. Він уже присутній в системі, але поки нічого корисного не робить. У наступних уроках ми будемо наповнювати його корисним функціоналом.
20 травня 2026 року офіційно відбувся реліз довгоочікуваної мажорної версії WordPress 7.0 «Armstrong», названої на…
Кожен власник сайту та SEO-спеціаліст веде щоденну запеклу боротьбу за утримання користувача на сторінках вебресурсу.…
Футбольна секція швидко показує, наскільки взуття підходить дитині. Якщо пара ковзає, тисне або погано чіпляється…
Компанія Samsung - один із лідерів на ринку електроніки. Її смартфони вирізняються надійністю, якісними дисплеями,…
Іспанська мова приваблює мільйони людей своєю мелодійністю, емоційністю та відносною простотою вивчення. Одним із найважливіших…
Робочий простір давно перестав бути просто столом із ПК/ноутбуком. Сьогодні це повноцінна екосистема, де кожна…