Необходимо написать собственное сообщение на странице оформления заказа в magento 2 - PullRequest
0 голосов
/ 10 июля 2019

Я пытаюсь показать сообщение на странице оформления заказа, где клиент вводит свои данные оформления заказа.Я хочу показать сообщение в начале формы.

1 Ответ

0 голосов
/ 11 июля 2019

Редактировать оформление заказа не так просто. Вот что я делаю для добавления сообщения в верхней части списка способов доставки, при оформлении заказа:

1 / Создать модуль

app/code/MyModule/Shipping/registration.php

<?php
\Magento\Framework\Component\ComponentRegistrar::register(
    \Magento\Framework\Component\ComponentRegistrar::MODULE,
    'MyModule_Shipping',
    __DIR__
);


app/code/MyModule/Shipping/etc/module.xml

<?xml version="1.0" ?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd">
    <module name="MyModule_Shipping" setup_version="0.1.0"/>
</config>

2 / Использовать макет, чтобы перезаписать HTML-файл оформления заказа

app/code/MyModule/Shipping/view/frontend/layout/checkout_index_index.xml

<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <body>
        <referenceBlock name="checkout.root">
            <arguments>
                <argument name="jsLayout" xsi:type="array">
                    <item name="components" xsi:type="array">
                        <item name="checkout" xsi:type="array">
                            <item name="children" xsi:type="array">
                                <item name="steps" xsi:type="array">
                                    <item name="children" xsi:type="array">
                                        <item name="shipping-step" xsi:type="array">
                                            <item name="children" xsi:type="array">
                                                <item name="shippingAddress" xsi:type="array">
                                                    <item name="config" xsi:type="array">
                                                        <item name="shippingMethodListTemplate" xsi:type="string">MyModule_Shipping/shipping-method-list-template</item>
                                                    </item>
                                                </item>
                                            </item>
                                        </item>
                                    </item>
                                </item>
                            </item>
                        </item>
                    </item>
                </argument>
            </arguments>
        </referenceBlock>
    </body>
</page>

3 / Наконец, отредактируйте html-файл

Копировать vendor/magento/module-checkout/view/frontend/web/template/shipping-address/shipping-method-list.html в app/code/MyModule/Shipping/view/frontend/web/template/shipping-method-item-template.html.

Теперь вы можете редактировать файл оформления заказа.

Осторожно: это HTML-файл, который работает с JavaScript (здесь нет PHP). Если вам нужно добавить информацию о базе данных, вам также придется переписать некоторые файлы javascript, используя файл requirejs-config.js.

...