Magento 2:管理者からトランザクションメールロゴをアップロードできない


27

トランザクションメールのロゴを変更しようとしています。

管理者>コンテンツ>デザイン>構成>レコードの編集->トランザクションメール

Magento 2.1にありますが、保存後にロゴが壊れた画像を表示します。添付のスクリーンショットを参照してください。

ここに画像の説明を入力してください


1
画像が見つかりませんので、それらの画像を表示します。右クリックして、要素の表示画像のページを点検し、確認してください、それはあなたが解決策を見つけること.may
Hitesh Vaghasiya

1
inspect要素が/pub/media/email/logo/stores/1/email_logo.pngを表示した後、現在はディレクトリ/pub/media/logo/websites/1/email_logo.pngに保存されているメールのロゴ
Lalit Kaushik

1
Magento 2.1のバグだと感じています
Lalit Kaushik

1
Magento 2.1.3でもこの問題に直面しています。コアファイルを変更する以外の解決策はありますか?
BornCoder

2.2.6の最新バージョンを実行すると、これはまだ問題です。dirsとファイルを手動で作成してみましたが、まったく成功しませんでした。magentoの開発者がCMS 101の最も基本的な機能の一部を解決していないことはばかげています。
マルコヤミン

回答:


9

私もこの問題に遭遇し、一時的な解決策を作りました:

私はチェックMagento/Config/Model/Config/Backend/Email/Logoしてこの定数を見つけました:

const UPLOAD_DIR = 'email/logo';

変更して:

const UPLOAD_DIR = 'logo';

でもMagento/Email/etc/di.xml、私email/logoはちょうどに置き換えましたlogo

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

に:

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

動作していますが、電子メールには反映されません
Rajan Soni

動作しますが、Same.anyの電子メールには反映されません。
Magento2デベロッパー

9

コードを変更せずに回避する最も簡単な方法は

1)ディレクトリを作成するpub/media/email/logo/default pub/media/email/logo/stores/1/(2.1.2で動作)

2)ロゴをディレクトリに手動でコピーします。

3)次に、正しい手順で[ コンテンツ]> [設計]> [構成]> [編集]> [国境を越えた電子メール]> [

新しく作成したディレクトリに手動で追加した同じロゴをアップロードします。


これはまだバージョン2.1.7の問題です!!!
styzzz

このソリューションは驚くほど効果的でした(アクセス許可を設定することを忘れないでください)
-nicolallias

私のために働いていない
サーベシュティワリ

@ErSarveshVTiwari 2.1.2バージョンのディレクトリパスがありました-あなたのバージョンで動作しますか?応答してバージョンを指定してください
Nolwennig

@styzzz 2.1.2バージョンのディレクトリパスがありました-2.1.7バージョンで動作しますか?
ノルウェンニグ

3

これは2.1.2以前のバグです。画像をアップロードした後、pub / media / email / logo / websites / 1 /の間違ったディレクトリに移動します

pub / media / logo / websites / 1 /である必要があります

ファイル参照:app / code / Magento / Email / Model / AbstractTemplate.php

最新の2.1.2にはまだ含まれていません。次のリリースで修正が実装されるのを待っている間に、正しいディレクトリに画像をアップロードするだけです。


1

バグはまだ生きています!次の手順に従って修正してください。

  • di.xmlをカスタムモジュールに作成します
  • 加える <preference for="Magento\Theme\Model\Design\Backend\Logo" type="Vendor\YouModuleName\Model\Design\Backend\Logo"/>
  • Vendor \ YouModuleName \ Model \ Design \ Backend \ Logo.phpファイルを作成します
  • const UPLOAD_DIR = 'logo'を置き換えます。const upload_dirの= 'メール/ロゴ';
  • 試して!;)

1

この回避策は私のために働いた:

logo_email.pngという名前のファイルをカスタムテーマのMagento_Email / webディレクトリに追加します。

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

をコピー

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

テーマのMagento_Email / emailディレクトリにファイルします。

タグの幅と高さの属性を編集して、ロゴを表示する領域を反映します(たとえば、200×100)。

例:

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

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

Adminを使用してこれらの値をオーバーライドする場合に備えて、if / else条件ステートメントをそのままにしておく必要があります。


1

新しいメールテンプレートを開き、テンプレートをロードして、[プレビュー]をクリックします。プレビュー後、ロゴをクリックします。Magentoが選択したパスが表示されます。パスに移動し、以前のロゴを削除してアップロードします。あなたの問題は解決されます。


1

Magentoは、2.2.6バージョンのバグを修正しました。

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

ここにコミットがあります。


これは2.1で修正されていますか?composerを使用して2.1インストールを更新しましたが、修正されていないようです。どうすれば更新できますか?
cha

今修正されているかどうかはわかりません。手動で変更します。
ビクターピオリン

1
2.1.2の時点ではまだ修正されていません。
-jehzlau

1
2.1.3でもまだ修正されていません。
BornCoder

1
2.1.4では修正されていませんが、完全なジョークです。
LM_Fielding

1

問題が2.3.0で発生している場合

メールロゴの場合: fileUploaderをimageUploaderに置き換えます

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

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

サイトロゴの場合: fileUploaderをimageUploaderに置き換えます

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">


0

以下は簡単な回避策です。ファイル構造などを変更する必要はありません。

最初に、ロゴの画像を使用して静的ブロックを作成します。必要に応じて、必要なテキストを追加します。
静的ブロックにemail-logoという名前を付けます。
次のように、電子メールテンプレートのhtmlにブロックを挿入します。

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

メールからデフォルトのメールヘッダーを削除できるようになりました。

{{template config_path="design/email/header_template"}}
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.