В Magento 2, как правильно переопределять электронные письма adminhtml?
Я хочу переопределить электронную почту Magento 2 в adminhtml, кто-нибудь уже делал это и как правильно это сделать?
Я пробовал это так: app/design/{vendor}/{theme}/{module}/email
Спасибо вам!
3 answers
Я сам это выяснил!
1) Я создал пользовательский модуль:
app/code/Vendor/Module/registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::MODULE,
'Vendor_Module',
__DIR__
);
app/code/Vendor/Module/etc/di.xml
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Theme\Model\View\Design">
<arguments>
<argument name="themes" xsi:type="array">
<item name="frontend" xsi:type="string">Magento/luma</item>
<item name="adminhtml" xsi:type="string">Vendor/backend</item>
</argument>
</arguments>
</type>
</config>
app/code/Vendor/Module/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="Vendor_Module" setup_version="1.0.0">
<sequence>
<module name="Magento_Backend"/>
</sequence>
</module>
</config>
2) в интерфейсе командной строки используйте php -d memory_limit=-1 bin/magento setup:upgrade
3) После создания самого модуля я создал папку adminhtml:
app/design/adminhtml/Vendor/backend/registration.php
<?php
\Magento\Framework\Component\ComponentRegistrar::register(
\Magento\Framework\Component\ComponentRegistrar::THEME,
'adminhtml/Vendor/backend',
__DIR__
);
app/design/adminhtml/Vendor/backend/theme.xml
<theme xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Config/etc/theme.xsd">
<title>Vendor backend Theme</title>
<parent>Magento/backend</parent>
</theme>
4) И в пользовательской папке adminhtml теперь вы можете переписать что угодно, я сделал переписывание для следующего файла следующим образом:
app/design/adminhtml/Vendor/backend/Module_Name/email/tracking.html
Есть способ настроить шаблон электронной почты, то есть использовать Шаблоны электронной почты администратора Magento
Вы можете перейти по этой ссылке: http://devdocs.magento.com/guides/v2.1/frontend-dev-guide/templates/template-email.html#customize-email-admin
Смотрите мой пример ниже для переопределения шаблона электронной почты
Например, если вы хотите переопределить шаблон электронной почты новой учетной записи клиента
Скопируйте шаблон электронной почты из
Vendor/magento/module-customer/view/frontend/email/account_new.html
До
/app/design/frontend/Vendor/YourTheme/Magento_Customer/email/account_new.html