Внутренний заказ на продажу Magento2 view.xml не удается переопределить файл шаблона


Я хочу переопределить файл шаблона для представления внутреннего порядка

Я проверил путь к шаблону и обнаружил, что этот файл называется.

vendor/temando/module-shipping-m2/view/adminhtml/templates/sales/order/view/info.phtml

Поэтому для переопределения я сделал следующее в своем модуле

Vendor/Module/etc/module.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
    <module name="Vendor_Module" setup_version="1.0.0"></module>
     <sequence>
            <module name="Magento_Wishlist"/>
            <module name="Temando_Shipping"/>
     </sequence>
</config>

App/code/Vendor/Module/view/adminhtml/layout/sales_order_view.xml

<?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">
<body>
    <referenceContainer name="left">
        <referenceBlock name="order_info">
            <action method="setTemplate">
                <argument name="template" xsi:type="string">Vendor_Module::info.phtml</argument>
            </action>
        </referenceBlock>
    </referenceContainer>
</body>
</page>

И я поместил info.phtml в следующее путь приложение/код/Поставщик/Модуль/просмотр/adminhtml/шаблоны/info.phtml

Но все равно, это не работает, очистите кэш и все, но все равно не берите вышеуказанный файл.

Что может быть не так?

Author: Kaushal Suthar, 2018-06-15

2 answers

Я повторил ваши шаги, и переопределение работает для меня.

Вот что я сделал:

Добавлено app/code/Vendor/Module/view/adminhtml/layout/sales_order_view.xml в существующий модуль

<?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">
    <body>
        <referenceContainer name="left">
            <referenceBlock name="order_info">
                <action method="setTemplate">
                    <argument name="template" xsi:type="string">Vendor_Module::info.phtml</argument>
                </action>
            </referenceBlock>
        </referenceContainer>
    </body>
</page>

Скопировал содержимое vendor/magento/module-sales/view/adminhtml/templates/order/view/info.phtml в новый шаблон app/code/Vendor/Module/view/adminhtml/templates/info.phtml:

<?php
/**
 * Copyright © Magento, Inc. All rights reserved.
 * See COPYING.txt for license details.
 */

/**
 * @var \Magento\Sales\Block\Adminhtml\Order\View\Info $block
 */

// @codingStandardsIgnoreFile

$order = $block->getOrder();

$orderAdminDate = $block->formatDate(
    $block->getOrderAdminDate($order->getCreatedAt()),
    \IntlDateFormatter::MEDIUM,
    true
);

$orderStoreDate = $block->formatDate(
    $order->getCreatedAt(),
    \IntlDateFormatter::MEDIUM,
    true,
    $block->getTimezoneForStore($order->getStore())
);
?>

<!-- I added this bit -->
<h1>OVERRIDE</h1>
<h1>OVERRIDE</h1>
<h1>OVERRIDE</h1>

<section class="admin__page-section order-view-account-information">
    <div class="admin__page-section-title">
        <span class="title"><?= $block->escapeHtml(__('Order & Account Information')) ?></span>
    </div>

Выполнил команду setup:upgrade для очистки всех кэшей:

$ php -f bin/magento setup:upgrade

Посетил страницу сведений о заказе в администраторе: http://www.example.test/admin/sales/order/view/order_id/18/key/29acbf64d18925d298b839dae9c432d2090ec92b3b175649bf3a98c69fae6b47/

enter image description here

Похоже, что проблема, следовательно, заключается в расширении Temando. Я бы проверил, работают ли описанные выше шаги после отключения расширения Temando.

Если это так, я бы связался с Темандо.

 0
Author: ProcessEight, 2018-06-15 12:38:37

Я допустил очень глупую опечатку.

В etc.xml

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
    <module name="Vendor_Module" setup_version="1.0.0"></module>
     <sequence>
            <module name="Magento_Wishlist"/>
            <module name="Temando_Shipping"/>
     </sequence>
</config>

Это должно быть похоже на следующее

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../../../lib/internal/Magento/Framework/Module/etc/module.xsd">
    <module name="Hs_Helper" setup_version="1.0.0">
        <sequence>
                <module name="Temando_Shipping"/>
                <module name="Magento_Wishlist"/>
        </sequence>
    </module>
</config>
 0
Author: Kaushal Suthar, 2018-06-15 12:55:20