Usiłuję zmienić logo e-maila transakcyjnego.
Administrator> Treść> Projekt> Konfiguracja> Edytuj dowolny rekord -> E-maile transakcyjne
Jest na Magento 2.1, ale logo pokazuje uszkodzony obraz po zapisaniu. zapoznaj się z załączonym zrzutem ekranu.
Usiłuję zmienić logo e-maila transakcyjnego.
Administrator> Treść> Projekt> Konfiguracja> Edytuj dowolny rekord -> E-maile transakcyjne
Jest na Magento 2.1, ale logo pokazuje uszkodzony obraz po zapisaniu. zapoznaj się z załączonym zrzutem ekranu.
Odpowiedzi:
Zetknąłem się również z tym problemem i wprowadziłem tymczasowe rozwiązanie:
Sprawdziłem Magento/Config/Model/Config/Backend/Email/Logoi znalazłem tę stałą:
const UPLOAD_DIR = 'email/logo';
i zmieniłem na:
const UPLOAD_DIR = 'logo';
także w Magento/Email/etc/di.xml, zastąpiłem email/logotylko logo:
<item name="value" xsi:type="string">email/logo</item>
do:
<item name="value" xsi:type="string">logo</item>
Najłatwiejszym obejściem bez modyfikacji kodu jest
1) utwórz katalog pub/media/email/logo/default lub pub/media/email/logo/stores/1/(działa na 2.1.2)
2) ręcznie skopiuj logo do katalogu.
3) Następnie za pomocą prawidłowej procedury Treść> Projekt> Konfiguracja> Edycja> Ponadnarodowe wiadomości e-mail>
Teraz prześlij to samo logo, które ręcznie dodałeś do nowo utworzonego katalogu.
To jest błąd w wersji 2.1.2 i niższych. Po przesłaniu obraz trafia do niewłaściwego katalogu w pubie / media / email / logo / sites / 1 /
Powinien to być pub / media / logo / strony internetowe / 1 /
Referencje pliku: app / code / Magento / Email / Model / AbstractTemplate.php
Nie jest jeszcze uwzględniony w najnowszym 2.1.2. Możesz po prostu załadować obraz do odpowiedniego katalogu, czekając na wprowadzenie poprawki w następnej wersji.
Błąd wciąż żyje! Wykonaj następujące kroki, aby to poprawić:
<preference for="Magento\Theme\Model\Design\Backend\Logo" type="Vendor\YouModuleName\Model\Design\Backend\Logo"/> To obejście działało dla mnie:
Dodaj plik o nazwie logo_email.png do katalogu Magento_Email / web w niestandardowym motywie:
app/design/frontend/Vendor/yourtheme/Magento_Email/web directory
Skopiuj
<Magento_Email_module_dir>/view/frontend/email/header.html
plik do katalogu Magento_Email / email w swoim motywie.
Edytuj atrybuty szerokości i wysokości znacznika, aby odzwierciedlić obszar, w którym chcesz wyświetlać logo (na przykład 200 × 100).
Przykład:
{{if logo_width}}
width="{{var logo_width}}"
{{else}}
width="200"
{{/if}}
{{if logo_height}}
height="{{var logo_height}}"
{{else}}
height="100"
{{/if}}
Powinieneś pozostawić instrukcję warunkową if / else na wypadek, gdybyś kiedykolwiek chciał zastąpić te wartości za pomocą Administratora.
Magento naprawiło błąd w wersji 2.2.6.
Tutaj masz zatwierdzenie.
Jeśli problem występuje w 2.3.0
Logo e-mail: Zamień fileUploader na imageUploader w
vendor / magento / module-email / view / adminhtml / ui_component / design_config_form.xml
<field name="email_logo" formElement="imageUploader">
Logo witryny: zamień fileUploader na imageUploader w
vendor / magento / module-theme / view / adminhtml / ui_component / design_config_form.xml
<field name="head_shortcut_icon" formElement="imageUploader">
I
<field name="header_logo_src" formElement="imageUploader">
Moje rozwiązanie tego błędu.
1. Skopiuj ten moduł do aplikacji / code / Icube / EmailLogo
2. php bin / magento setup: upgrade
Wdróż i wyczyść pamięć podręczną.
https://github.com/quannh02/EmailLogoMagento2.1
Poniżej przedstawiono proste obejście. Nie trzeba zmieniać struktury plików itp.
Najpierw utwórz blok statyczny z obrazem swojego logo. Dodaj niezbędne teksty, jeśli chcesz.
Nazwij logo e-mail bloku statycznego.
Wstaw blok do html szablonu e-maila w następujący sposób:
{{block class="Magento\Cms\Block\Block" area='frontend' block_id="email-logo"}}
Możesz teraz usunąć domyślny nagłówek wiadomości e-mail:
{{template config_path="design/email/header_template"}}