Magento thường phát triển tính năng thông qua Module, Vậy Module là gì? Trong bài viết này mình sẽ hướng dẫn khởi tạo module cơ bản trong lập trình Magento cơ bản và cách thức vận hành của module trong Magento 2.
Module là gì?
Module hay còn gọi là một phần mở rộng (extension) của Magento để tạo hoặc tùy chỉnh và mở rộng các tính năng của Magento 2, các nhà phát triển sử dụng module để thêm hoặc thay đổi các chức năng có sẵn của Magento.
Dưới đây là các bước để khởi tạo một module và giải thích từng thành phần trong module của Magento 2
Bước 1: Khởi tạo module trong Magento
- Đầu tiên là tạo một thư mục mới trong thư mục app/code/ trong Magento. Ví dụ: app/code/[Vendor]/[Module]
- Tạo file registration.php trong thư mục mới với nội dung:
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'[Vendor]_[Module]',
__DIR__
);
Bước 2: Tạo file module.xml
- Tạo file module.xml trong thư mục [Vendor]/[Module]/etc với nội dung sau:
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
<module name="[Vendor]_[Module]" setup_version="1.0.0">
<sequence>
<module name="Magento_Cms"/>
</sequence>
</module>
</config>
Trong đó,
- setup_version là số phiên bản của module.
- sequence là Danh sách các module mà module hiện tại phụ thuộc vào.
Bước 3: Chạy setup và kiểm tra module
Sau khi đã khởi tạo module thành công thì chạy lệnh
bin/magento setup:upgrade
hoặc
bin/magento module:enable [-c|--clear-static-content] [-f|--force] [--all] <module-list>
bin/magento module:và kiểm tra module đã được cài đặt bằng các lệnh sau đây:
- Gõ lệnh bin/magento module:status để kiểm tra xem module của bạn đã được enable thành công chưa
- Kiểm tra bảng setup_module và search column module để xem module của bạn đã được thêm vào chưa nhé
Giải thích từng thành phần
- File module.xml sẽ cung cấp thông tin cơ bản về module của bạn, bao gồm tên, phiên bản, phụ thuộc
- File registration.php thì ta sẽ khai báo module đó cho hệ thống của magento để nhận biết và lưu lại bảng setup_module.
Kết bài:
Đây là các bước để các bạn có thể tạo một module cơ bản nhất, những thắc mắc về bài học các bạn vui lòng comment dưới bài viết mình sẽ giải đáp thắc mắc của các bạn nhé!
Ngoài ra các bạn có thể truy cập vào document của Magento để cập nhật những thông tin mới nhất về mã nguồn nhé! https://devdocs.magento.com/
Cảm ơn các bạn! Thân ái!