Magento 2開發教程 建立新模組

2022-09-13 19:03:08 字數 2081 閱讀 1295

magento 2系統整體結構是建立在模組的基礎上。通常,建立定製的第一步是構建模組。

要建立模組,需要完成以下步驟:

建立模組資料夾

建立etc/module.xml檔案.

建立registration.php檔案.

執行bin/magento setup:upgrade指令碼安裝新模組

檢查模組是否正常工作

讓我們詳細地看一下這些步驟。

您應該為您的新模組選擇哪些位置?

如果你要構建乙個可重用的擴充套件,最好使用composer來建立它,並將你的模組放在vendor//module-something資料夾。

在magento 2每個模組的名稱由兩部分組成–vendor和模組本身。換句話說,模組分為vendor,所以你需要定義vendor和模組名稱。在這個例子中,讓我們的vendor名稱「learning」和「firstunit」模組。

cd到根資料夾

下一步, 你需要建立etc/module.xml檔案。 此檔案需要模組存在。

此檔案包含以下資訊:

模組名稱定義的資料夾我們剛剛建立的,因為在magento 2類名稱必須遵循的資料夾結構。因為我們建立了資料夾learning/firstunit, our module name will belearning_firstunit所有屬於這個模組的類將從learning\firstunit– 示例:learning\firstunit\observer\test.

模組版本表示資料庫架構和資料的當前版本,並用於公升級。 例如,假設您決定在模組中修改表的架構。

你怎麼能確保在所有部署**的情況下會發生這種變化?通過直接sql查詢修改資料庫將不起作用。相反,magento

2已經安裝和公升級的每乙個模組的指令碼(可選)。這些指令碼包含修改資料庫架構或資料的命令。跟蹤是否執行指令碼或不使用magento

2模組版本。每次執行新的資料庫更改時,您將實現模組的新版本並更改相應的版本module.xml. magento的儲存在資料庫的當前模組的版本,如果資料庫中的乙個值與module.xml不匹配, 它將執行公升級**。

依賴。如果乙個模組依賴於另乙個模組,module.xml檔案將有乙個特殊宣告,定義當前模組依賴的模組列表。在這個例子中,我們將使我們的模組依賴magento_catalog。

然後把下面的**:

<?xml version="1.0"?>

xmlns:xsi="" xsi:nonamespaceschemalocation="urn:magento:framework:module/etc/module.xsd">

name="learning_firstunit" setup_version="0.0.1"> name="magento_catalog"/>

請注意,在指定的xml檔案中:

<?php \magento\framework\component\componentregistrar::register(

\magento\framework\component\componentregistrar::module, 'learning_firstunit',

__dir__

);

registration.php是所有模組都遵循相同模式的標準化檔案。

唯一不同的是模組名,在我們的例子中是learning_firstunit

執行此命令使您的新模組主動通知magento的存在。

php bin/magento setup:upgrade
它應該呼應大量的輸出,其中一行應該是learning_firstunit. 驗證此行**是否存在。

手動更改此列表!

採用這些步驟,你可以成功地建立magento 2新模組。

magento2常見命令

magento2常見命令 在magento2中我們經常會用到php bin magento 命令 引數 來完成一些操作,所以就對命令做了乙個總結 常見的命令如下 php bin magento list 檢視所有命令列表 moudule相關的引數 1 moudule status 檢視所有modul...

Magento2模式設定

magento有三種執行模式,按效能由低到高,依次為 developer default production 可以使用以下命令檢視當前執行模式 bin magento deploy mode show使用以下命令設定執行模式 bin magento deploy mode set develope...

magento2 觀後思想記錄

模型檔案 包含整體資料庫邏輯,它不執行sql查詢 資源模型 從資料庫獲取資訊 並執行sql邏輯 集合模型 被認為是乙個資源模型使我們能夠篩選和獲取集合表中的資料 模型工廠物件 當引用時magento自動建立 模型工廠物件來例項化模型物件 system.xml中配置的字段值 在configuratio...