Magento 2.2.2 Пользовательская тема Xml обновляет внешний скрипт с помощью строки запроса &или &


Добавление внешней ссылки в пользовательскую тему в любом xml, например: contact_index_index.xml doe неправильно анализирует, если у него есть & или &

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&amp;callback=initMap" src_type="url" />

Обратите внимание, что &amp; дает:

{"0":"Warning: simplexml_load_string(): Entity: line 6371: parser error : EntityRef: expecting ';' in \/var\/www\/vhosts\/magento2 \/htdocs\/vendor\/magento\/framework\/View\/Model\/Layout\/Merge.php

Кто-нибудь тоже испытывает это и как это исправить?

Спасибо.

Author: Juliano Vargas, 2018-04-30

2 answers

Единственный способ, которым я обнаружил, что это работает, - использовать head.aditional:

Например,

        <referenceBlock name="head.additional">
            <block class="Magento\Framework\View\Element\Text" name="my_script">
                <action method="setText">
                    <argument translate="true" name="text" xsi:type="string">
                        <![CDATA[<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&amp;callback=initMap" src_type="url" />]]>
                    </argument>
                </action>
            </block>
        </referenceBlock>
 1
Author: Juliano Vargas, 2018-04-30 12:09:01

Попробуйте вот это:

<?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://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&amp;callback=initMap" src_type="url"/>
</head>
</page>
 0
Author: hweb87, 2018-04-30 11:22:46