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.jsonModü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-namedosyalarının yerleştirilmesine neden olur vendor/vendorname/module-name.
Özel türü magento / magento-composer-installer paketinde magento2-modulebesteci-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/moduledosyaları oradan alıp kopyalayacaktır app/code/VendorName/ModuleName.