Saya ingin menampilkan gambar dalam file templat modul. Ketika seseorang memasang modul saya, dia dapat melihat gambar itu. Bisakah saya menyimpan gambar saya di dalam direktori modul saya atau tidak?
Saya ingin menampilkan gambar dalam file templat modul. Ketika seseorang memasang modul saya, dia dapat melihat gambar itu. Bisakah saya menyimpan gambar saya di dalam direktori modul saya atau tidak?
Jawaban:
Ya, Anda dapat menyimpan gambar di direktori web modul Anda tergantung pada area templat Anda. Path-nya adalah: Vendor / Module / view / {frontend | adminhtml} / web / images /
Kemudian dalam file * .phtml Anda, Anda dapat menampilkan gambar:
<img src="<?php echo $this->getViewFileUrl('Vendor_Module::images/image.png'); ?>" />
\Magento\Framework\View\Result\PageFactory
kelas di konstruktor Anda sebagai $pageFactory
dan kemudian memanggil $pageFactory->getViewFileUrl()
metode. Untuk file js saya tidak tahu bagaimana Anda bisa mendapatkannya.
Saya suka base-64 mengkodekan PNG saya dan inline mereka. Saya menggunakan https://www.base64-image.de .
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJ....=">
<script type="text/x-magento-init">
{
<?php /* this defines the target of the widget */ ?>
"#target_id": {
<?php /* this defines the widget */ ?>
"image.widget.name": {
"imagename" : "<?php echo $this->getViewFileUrl('Vendor_Module::images/image.png'); ?>"
}
}
}
Anda akan menggunakan skrip inisialisasi widget magento untuk memulai javascript Anda dengan opsi "imagename" yang ditentukan. Teknik inisialisasi ini biasanya dilakukan dalam file phtml. Kode saya menganggap gambar Anda ada di Vendor / Module / view / {frontend | adminhtml} / web / images /
Untuk informasi lebih lanjut, Anda dapat melihat dokumentasi magento 2. http://devdocs.magento.com/guides/v2.1/javascript-dev-guide/javascript/js_init.html