Katakanlah saya ingin mengembangkan ekstensi Magento yang antarmuka untuk, katakanlah, paket charting Sumber Terbuka atau galeri gambar atau apa pun yang BUKAN bagian dari ekstensi itu sendiri. Saat diunduh (terpisah dari ekstensi) lib pihak ke-3 datang dengan .zip sendiri dengan semua .php, .js, .html, dan .css bersamaan.
Apakah saya menempatkan pemilik situs yang miskin yang ingin memasang ekstensi saya bersama dengan lib pihak ke-3, beban menarik pihak ke-3 asli .zip terpisah dan buat mereka meletakkan .js di / js, .php in / lib,. css di / skin dll?
Atau apakah ada "tempat pembuangan" yang diterima secara umum untuk pihak ke-3 mana pun. Zip di mana orang dapat dengan mudah mengekstrak unduhan SEBAGAIMANA ADANYA dan selesai dengan itu?
Jadi Anda ingin membuat ekstensi dan Anda menggunakan sumber daya / paket eksternal untuk membangunnya. Menurut pendapat saya, paket apa pun yang Anda gunakan dalam ekstensi Anda, ekstensi Anda harus mengikuti praktik terbaik Magento. Itu berarti Anda harus memisahkan semua js, css, gambar dari sumber daya eksternal dan harus ditempatkan dalam
base\default
direktori paket tema.yaitu tidak ada lokasi unik seperti itu untuk menempatkan sumber daya paket pihak ketiga. Pada akhirnya ketika Anda memberikan ekstensi yang keren, semua js, css dan gambar yang terkait dengan ekstensi Anda harus disimpan di tempat di mana pengembang lain biasanya akan mencari dan yang dalam banyak kasus adalah
base/default
paket tema.Pendeknya
Semua ekstensi Anda harus berada di bawah
Dengan cara ini, pengembang lain dapat dengan mudah menemukan js, css dan gambar (dari sumber daya eksternal Anda juga) dari ekstensi Anda dengan sangat mudah. Karena Anda menggunakan sub direktori tambahan untuk menunjukkan file sumber daya eksternal di dalam direktori nama ekstensi Anda, itu akan memberi orang lain petunjuk terbaik bahwa ekstensi Anda bergantung pada beberapa paket pihak ketiga.
Jadi saya sarankan Anda untuk memisahkan paket eksternal dan menjadikannya bagian dari ekstensi Anda sehingga, pengembang lain dapat dengan mudah menemukan dependensi Anda. :-)
EDIT - 1
Anda seharusnya tidak membuat ekstensi ekstensi Anda untuk pemilik situs Anda. Anda dapat menghindari kesulitan ini dengan menyelaraskan ekstensi Anda dengan benar. Itu artinya, jika Anda menyimpan semua file terkait di lokasi direktori yang ditentukan, maka yang harus dilakukan oleh semua pemilik situs adalah, ambil ekstensi Anda lalu Gabungkan ekstensi Anda dari direktori root aplikasi. yaitu Sejajarkan ekstensi Anda dengan benar. Seharusnya terlihat seperti ini.
EDIT - 2
Jika ada beberapa paket, yang harus dibagikan di semua aplikasi Magento (seperti perpustakaan javascript, atau paket php dll), maka Anda dapat meletakkannya di
\lib
direktori.Memang benar bahwa, mungkin ada file duplikat jika dua ekstensi bergantung pada paket sumber daya yang sama. Mereka mungkin menggunakan versi berbeda dari paket sumber daya yang sama juga. Tetapi pada dasarnya, ekstensi Anda harus menggunakan sumber daya ekstensi Anda saja (dan dapat mengandalkan sumber daya Magento default) dan ekstensi tersebut tidak boleh bergantung pada sumber daya ekstensi lain, kecuali ekstensi Anda merupakan "versi perpanjangan" dari ekstensi pihak ketiga.
sumber
js, css, images
dalambase\default
paket". Lihat juga kode edit sayaMagento memiliki pengelola paket sendiri yang disebut Magento Connect. Anda harus memeriksa panduan ini dari dokumentasi resmi untuk memahami sepenuhnya bagaimana penampilan paket. Anda dapat mengemas modul Anda dari instalasi Magento setelah Anda memahami strukturnya.
sumber
Pada dasarnya Magento menggunakan struktur itu sendiri untuk terus
.php
,.phtml
,js
,css
,images
file.Untuk pengembang ekstensi Magento, sangat penting bagi Anda untuk mengikuti cara Magento. Periksa tautan ini .
Begitu,
.php
File Anda harus berada di bawahapp/code/community
folderjs
File Anda dapat masuk kejs
folder atau diskin/frontend or adminhtml/your_theme_pack/your_theme/js
foldercss
File Anda dapat masuk keskin/frontend or adminhtml/your_theme_pack/your_theme/css
folderimages
File Anda dapat masuk keskin/frontend or adminhtml/your_theme_pack/your_theme/images
folderfiles should go to
Folder ' app html / desain / tampilan depan atau adminhtml / templat` AndaFrontend PS berarti jika ekstensi Anda untuk toko depan dan adminthml berarti jika ekstensi Anda untuk area admin.
Ada cara khusus untuk menyimpan file-file ini di magento, jadi Anda harus mengikuti mereka.
Saya juga akan memeriksa apakah fungsi yang Anda inginkan / salin sudah tersedia di kerangka magento / zend. Misalnya membuat pdf, mengirim email, membaca xml dll sudah dibangun di magento.
Semoga ini membantu.
Perbarui 1
Jika Anda ingin hanya menyimpan file Anda di suatu tempat maka Anda dapat menyimpannya di mana saja. Anda bahkan dapat membuat folder baru di dalam root magento. Tapi ini bukan praktik terbaik untuk magento, yang akan memuat server Anda saat mengeksekusi file-file itu. Anda ingin memeriksa https://magentotherightway.com/ ini
sumber
local
codepool.