magento 2: ฉันต้องการแสดงรูปภาพในไฟล์เทมเพลตโมดูล HTML


21

ฉันต้องการแสดงภาพในไฟล์เทมเพลตโมดูล เมื่อใครบางคนติดตั้งโมดูลของฉันเขาจะเห็นภาพนั้น ฉันสามารถเก็บภาพไว้ในไดเรกทอรีโมดูลได้หรือไม่?


Ohoo ankush bhai magento2
Amit Singh

คำตอบ:


33

ใช่คุณสามารถเก็บภาพในเว็บไดเรกทอรีโมดูลของคุณขึ้นอยู่กับพื้นที่ของแม่แบบของคุณ เส้นทางคือ: ผู้ขาย / โมดูล / ดู / {ส่วนหน้า | adminhtml} / เว็บ / ภาพ /

จากนั้นในไฟล์ * .phtml ของคุณคุณสามารถแสดงภาพ:

<img src="<?php echo $this->getViewFileUrl('Vendor_Module::images/image.png'); ?>" />

ถ้าฉันต้องการให้ url เป็นตัวช่วยฉันจะหามันได้อย่างไร หรือในไฟล์ js?
Nitesh

ในตัวช่วยคุณสามารถแทรก\Magento\Framework\View\Result\PageFactoryคลาสในตัวสร้างของคุณเป็น$pageFactoryแล้วเรียก$pageFactory->getViewFileUrl()วิธีการ สำหรับไฟล์ js ฉันไม่รู้ว่าคุณจะได้มันมาอย่างไร
Miroslav Petroff

1

ฉันชอบ base-64 เข้ารหัส PNG ของฉันและแทรกมันเข้าไป ผมใช้https://www.base64-image.de

        <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJ....=">

0
<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'); ?>"
        }
    }
}

คุณจะใช้สคริปต์การเริ่มต้นวิดเจ็ตของวีโอไอพีเพื่อเริ่มต้นจาวาสคริปต์ด้วยตัวเลือก "imagename" ที่กำหนดไว้ เทคนิคการเริ่มต้นนี้มักจะทำในไฟล์ phtml รหัสของฉันถือว่าภาพของคุณอยู่ในผู้ขาย / โมดูล / ดู / {ส่วนหน้า | adminhtml} / เว็บ / ภาพ /

สำหรับข้อมูลเพิ่มเติมคุณสามารถดูเอกสารประกอบของ magento 2 http://devdocs.magento.com/guides/v2.1/javascript-dev-guide/javascript/js_init.html

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.