Bagaimana cara menambahkan js eksternal di Magento 2

11

Saya ingin menambahkan tautan berikut di tag kepala, tetapi 404 kesalahannya kembali. Ada yang bisa membantu saya dalam hal ini?

<script  type="text/javascript"  src="https://www.google.com/recaptcha/api.js"></script>
Sivakumar K
sumber
Ikuti saja artikel ini. inchoo.net/magento-2/... Orang-orang itu mengagumkan :)
Ashvini Marwal
saya perlu melalui file layout.silakan amati linknya dan bukan file
Sivakumar K

Jawaban:

26

Saya akan merekomendasikan menggunakan metode skrip daripada metode teks, lebih mudah bagi pengembang lain untuk memahami, lebih sedikit kode, dan memenuhi instruksi resmi Magento.

Untuk melakukan ini gunakan skrip atau tautan XML yang sama seperti biasa tetapi sertakan src_type="url". Seperti dicatat dalam dokumen resmi

<?xml version="1.0" ?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <head>
        <script src="https://www.google.com/recaptcha/api.js" src_type="url"/>
    </head>
</page>

Hasil

masukkan deskripsi gambar di sini

Ben Crook
sumber
Tidak tahu Anda bisa menentukan src_type pada tag skrip sampai sekarang :)
Smartie
Bagaimana cara menambahkan skrip dengan parameter? <script src = "// maps.googleapis.com/maps/api/js?key=APIKEY&libraries=places" src_type = "url" />
Sunny Khatri
& tidak menerima dengan tag skrip di magento 2
Sunny Khatri
4

Jika Anda menambahkan ini secara global, cara termudah adalah melakukannya melalui area admin.

Pergi ke Toko> Konfigurasi> Desain dan kemudian di tab HTML Head Anda dapat menambahkan skrip lain-lain.

Anda dapat menambahkannya menggunakan xml sekalipun. Misalnya, jika Anda hanya ingin ditambahkan ke beranda Anda, masukkan berikut ini di tampilan file tata letak / frontend / tata letak / cms_index_index.xml di dalam modul khusus Anda.

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <head>
        <script src="https://www.google.com/recaptcha/api.js" src_type="url"/>
    </head>
</page>

Sebagai catatan, jika Anda dapat menghindari menempatkan js di kepala saya lakukan karena hal ini akan membuat pemblokiran sampai js telah sepenuhnya diunduh.

Smartie
sumber
saya hanya perlu dalam satu halaman khusus.
Sivakumar K
Informasi semacam itu berguna untuk diketahui di awal :) Saya akan memperbarui posting saya.
Smartie
Tag tindakan telah disusutkan, silakan lihat devdocs.magento.com/guides/v2.0/frontend-dev-guide/layouts/… untuk info lebih lanjut.
Ben Crook
Bagaimana cara menambahkan skrip dengan parameter? <script src = "// maps.googleapis.com/maps/api/js?key=APIKEY&libraries=places" src_type = "url" />
Sunny Khatri