So fügen Sie externe js in Magento 2 hinzu


10

Ich möchte den folgenden Link in das Head-Tag einfügen, aber es wird ein 404-Fehler zurückgegeben. Kann mir jemand dabei helfen?

<script  type="text/javascript"  src="https://www.google.com/recaptcha/api.js"></script>

Folgen Sie einfach diesem Artikel. inchoo.net/magento-2/… Diese Jungs sind großartig :)
Ashvini Marwal

Ich brauche durch Layout-Datei. Bitte beachten Sie, dass es ein Link und eine Nicht-Datei ist
Sivakumar K

Antworten:


25

Ich würde empfehlen, die Skriptmethode anstelle der Textmethode zu verwenden. Für andere Entwickler ist es einfacher zu verstehen, es ist weniger Code und es entspricht den offiziellen Anweisungen von Magento.

Verwenden Sie dazu dasselbe Skript oder Link-XML wie gewohnt, jedoch einschließlich src_type="url". Wie in den offiziellen Dokumenten angegeben

<?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>

Ergebnisse

Geben Sie hier die Bildbeschreibung ein


Haben Sie nicht wissen Sie src_type auf dem Skript - Tag , bis jetzt :) angeben können
Smartie

Wie füge ich ein Skript mit einem Parameter hinzu? <script src = "// maps.googleapis.com/maps/api/js?key=APIKEY&libraries=places" src_type = "url" />
Sunny Khatri

& nicht akzeptieren mit Skript-Tag in Magento 2
Sunny Khatri

4

Wenn Sie dies global hinzufügen, ist es am einfachsten, dies über den Administrationsbereich zu tun.

Gehen Sie zu Stores> Configuration> Design und fügen Sie auf der Registerkarte HTML Head verschiedene Skripte hinzu.

Sie können es jedoch mit XML hinzufügen. Wenn Sie beispielsweise nur möchten, dass es Ihrer Homepage hinzugefügt wird, fügen Sie Folgendes in die Layoutdateiansicht / frontend / layout / cms_index_index.xml in Ihrem benutzerdefinierten Modul ein.

<?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>

Als Randnotiz, wenn Sie vermeiden können, das js in den Kopf zu setzen, würde ich, da dies in diesem Fall das Blockieren rendern würde, bis das js vollständig heruntergeladen wurde.


Ich brauche nur in einer benutzerdefinierten Seite.
Sivakumar K

Diese Art von Informationen ist zu Beginn nützlich :) Ich werde meinen Beitrag aktualisieren.
Smartie

Das Aktionstag wurde abgeschrieben. Weitere Informationen finden Sie unter devdocs.magento.com/guides/v2.0/frontend-dev-guide/layouts/… .
Ben Crook

Wie füge ich ein Skript mit einem Parameter hinzu? <script src = "// maps.googleapis.com/maps/api/js?key=APIKEY&libraries=places" src_type = "url" />
Sunny Khatri
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.