Magento 2: Gagal mengunggah logo email transaksional dari admin

27

Saya mencoba mengubah logo email transaksional dari.

Admin> Konten> Desain> Konfigurasi> Edit data apa saja -> Email Transaksional

Ada di Magento 2.1 tetapi logo menunjukkan gambar yang rusak setelah disimpan. silakan lihat screenshot yang terlampir.

masukkan deskripsi gambar di sini

Lalit Kaushik
sumber
1
Gambar tidak ditemukan sehingga ditampilkan. klik kanan dan Periksa elemen tampilkan halaman gambar dan periksa. mungkin Anda menemukan solusi
Hitesh Vaghasiya
1
setelah memeriksa elemen menunjukkan /pub/media/email/logo/stores/1/email_logo.png tetapi saat ini logo email disimpan di direktori /pub/media/logo/websites/1/email_logo.png
Lalit Kaushik
1
Saya merasa itu bug di Magento 2.1
Lalit Kaushik
1
Saya masih menghadapi masalah ini di Magento 2.1.3. Apakah ada solusi selain mengubah file inti ??
BornCoder
Menjalankan versi terbaru 2.2.6 ini masih menjadi masalah. Saya mencoba secara manual membuat dir dan file dengan sama sekali tidak berhasil. Sangat konyol bahwa devs di magento belum menyelesaikan beberapa fitur CMS 101 paling dasar.
Marco Yammine

Jawaban:

9

Saya juga mengalami masalah ini, dan membuat solusi sementara:

Saya memeriksa Magento/Config/Model/Config/Backend/Email/Logodan menemukan konstanta ini:

const UPLOAD_DIR = 'email/logo';

dan mengubahnya menjadi:

const UPLOAD_DIR = 'logo';

juga di Magento/Email/etc/di.xml, saya diganti email/logohanya dengan logo:

<item name="value" xsi:type="string">email/logo</item>

untuk:

<item name="value" xsi:type="string">logo</item>
reuelab
sumber
Ini bekerja tetapi tidak akan merefleksikan email
Rajan Soni
Ini bekerja tetapi itu tidak akan tercermin pada email. Ide yang sama.
Magento2 Devloper
9

Cara termudah untuk bekerja tanpa mengubah kode adalah dengan

1) buat direktori pub/media/email/logo/default atau pub/media/email/logo/stores/1/(berfungsi pada 2.1.2)

2) salin logo ke direktori secara manual.

3) Kemudian melalui prosedur yang benar, Konten> Desain> Konfigurasi> Edit> Email transnasional>

Sekarang unggah logo yang sama dengan yang Anda tambahkan secara manual ke direktori yang baru dibuat.

Darren Sutherland
sumber
INI MASIH MASALAH DALAM VERSI 2.1.7 !!!
styzzz
solusi ini ternyata sangat efektif (ingat untuk mengatur izin)
nicolallias
itu tidak bekerja untuk saya
Sarvesh Tiwari
@ErSarveshVTiwari Saya memiliki jalur direktori untuk versi 2.1.2 - Apakah ini berfungsi dengan versi Anda? Dapatkah Anda specifiy versi Anda dalam menanggapi silakan
Nolwennig
@styzzz Saya memiliki jalur direktori untuk versi 2.1.2 - Apakah ini berfungsi dengan versi 2.1.7 Anda?
Nolwennig
3

Ini adalah bug di 2.1.2 dan lebih rendah. Setelah mengunggah gambar, ia pergi ke direktori yang salah di pub / media / email / logo / situs web / 1 /

Itu harus pub / media / logo / situs web / 1 /

Ref file: app / code / Magento / Email / Model / AbstractTemplate.php

Itu belum termasuk dalam 2.1.2 terbaru. Anda bisa mengunggah gambar di direktori yang benar sambil menunggu perbaikan diimplementasikan pada rilis berikutnya.

jehzlau
sumber
1

Bugnya masih hidup! Ikuti langkah-langkah ini untuk memperbaikinya:

  • buat di.xml ke modul khusus Anda
  • menambahkan <preference for="Magento\Theme\Model\Design\Backend\Logo" type="Vendor\YouModuleName\Model\Design\Backend\Logo"/>
  • buat file Vendor \ YouModuleName \ Model \ Design \ Backend \ Logo.php
  • ganti const UPLOAD_DIR = 'logo'; dengan const UPLOAD_DIR = 'email / logo';
  • Menguji! ;)
Casian
sumber
1

Solusi ini berhasil untuk saya:

Tambahkan file bernama logo_email.png ke direktori Magento_Email / web dalam tema khusus Anda:

app/design/frontend/Vendor/yourtheme/Magento_Email/web directory

Salin

<Magento_Email_module_dir>/view/frontend/email/header.html

file ke direktori Magento_Email / email di tema Anda.

Edit atribut lebar dan tinggi tag untuk mencerminkan area di mana Anda ingin logo Anda ditampilkan (misalnya, 200 × 100).

Contoh:

{{if logo_width}}
    width="{{var logo_width}}"
{{else}}
    width="200"
{{/if}}

{{if logo_height}}
    height="{{var logo_height}}"
{{else}}
    height="100"
{{/if}}

Anda harus membiarkan pernyataan kondisional if / else ada jika Anda ingin mengganti nilai-nilai ini menggunakan Admin.

styzzz
sumber
1

Buka templat email baru, muat templat apa saja dan klik Pratinjau. Setelah melihat pratinjau klik pada logo. Ini akan menunjukkan jalan di mana Magento mengambilnya. Pergi ke jalan, hapus logo sebelumnya dan unggah. Masalah Anda akan terpecahkan.

imaangems
sumber
1

Magento memperbaiki bug dalam versi 2.2.6.

https://github.com/magento/magento2/commit/23103c03c527fe1ed3e1a3be691436818b7963fe#diff-6b96f29ad945c7cea90267bd4f533218L12

Di sini Anda memiliki komitmen mereka.

Victor Piolin
sumber
Apakah ini diperbaiki pada 2.1? Saya telah memperbarui instalasi 2.1 saya dengan komposer tetapi sepertinya tidak diperbaiki. Bagaimana cara kami memperbarui?
cha
Saya tidak tahu apakah sudah diperbaiki sekarang. Saya melakukan perubahan secara manual.
Victor Piolin
1
Ini belum diperbaiki pada 2.1.2.
jehzlau
1
Itu belum diperbaiki di 2.1.3 juga.
BornCoder
1
Tidak diperbaiki dalam 2.1.4, lelucon lengkap.
LM_Fielding
1

Jika masalah ini terjadi di 2.3.0

Untuk logo Email: Ganti fileUploader ke imageUploader di

vendor / magento / module-email / view / adminhtml / ui_component / design_config_form.xml

<field name="email_logo" formElement="imageUploader">

Untuk logo Situs: Ganti fileUploader ke imageUploader di

vendor / magento / module-theme / view / adminhtml / ui_component / design_config_form.xml

 <field name="head_shortcut_icon" formElement="imageUploader">

&

<field name="header_logo_src" formElement="imageUploader">
Bala Sivagnanam
sumber
0

Mengikuti adalah pekerjaan sederhana di sekitar. Tidak perlu mengubah struktur file, dll.

Pertama, buat blok statis dengan gambar logo Anda. Tambahkan teks yang diperlukan jika Anda mau.
Beri nama email-logo blok statis.
Masukkan blok di html templat email Anda seperti ini:

{{block class="Magento\Cms\Block\Block" area='frontend' block_id="email-logo"}}

Anda sekarang dapat menghapus header email default dari email Anda:

{{template config_path="design/email/header_template"}}
Els den Iep
sumber