Güncelleme
Geliştirme dalındaki bazı son değişikliklerle (7 Ekim) birkaç şey değişti gibi görünüyor. Artık satıcı dizininde yaşayan bir modülü desteklemek mümkün görünüyor.
Modül kurmak için iki örnek oluşturdum. Biri dosyaları uygulama / koda kopyalar ve diğeri modülü satıcı dizininde bulunduğu yere kaydeder.
Kopyalama Stratejisi: https://github.com/mttjohnson/magento2-sample-module-minimal-copy
Kayıt Stratejisi: https://github.com/mttjohnson/magento2-sample-module-minimal-register
Geliştirme amacıyla, kayıt stratejisini kullanmanın daha yararlı olduğunu düşünüyorum çünkü Magento tarafından çalıştırılan dosyalar doğrudan değiştirilebilir, test edilebilir ve daha sonra modül deposuna geri gönderilebilir.
Orijinal Yanıt
composer.json
Modül besteci paketiniz için bir tür dosya içeren bir dosyanız varsa magento2-module
, varsayılan olarak dosyalar dizinde belirtilen bir eşlenen dizine kopyalanır app/code
.
{
"name": "vendorname/module-name",
"type": "magento2-module",
"require": {
"magento/magento-composer-installer": "*"
},
"extra": {
"map": [
[
"module",
"VendorName/ModuleName"
]
]
}
}
Bu örnekte composer.json adlı besteci paketi adı, besteci paketinin vendorname/module-name
dosyalarının yerleştirilmesine neden olur vendor/vendorname/module-name
.
Özel türü magento / magento-composer-installer paketinde magento2-module
besteci-eklentisi olarak uygulanır . Bu yüzden bunu talep bölümünde listeledim. Dosyaların uygun magento dizinine kopyalanmasını sağlayan bu besteci eklentisidir .app/code
Bu extra: {map: [["composerDir","MagentoDir"]]}
bölüm, besteci paketinizin hangi bölümünün magento dizin yapınızın hangi bölümüyle eşleneceğini bilmek için besteci-eklenti yükleyicisi tarafından referans verilir. Sağlanan örnekte bu, vendor/vendorname/module-name/module
dosyaları oradan alıp kopyalayacaktır app/code/VendorName/ModuleName
.