2017-09-04 85 views
0

我的代码发送电子邮件这样的:像这样如何在laravel的电子邮件布局中显示图像?

public function toMail($notifiable) 
{ 
    return (new MailMessage) 
       ->subject('Test') 
       ->markdown('vendor.mail.markdown.message', ['data' => $this->data]); 
} 

我message.blade观点:

@component('mail::layout') 
    {{-- Header --}} 
    @slot('header') 
     @component('mail::header', ['url' => config('app.url')]) 
      {{ config('app.name') }} 
     @endcomponent 
    @endslot 

    {{-- Body --}} 
    This is your logo 
    ![Some option text][logo] 
    [logo]: {{asset('img/my-logo.png')}} "Logo" 

    {{-- Subcopy --}} 
    @isset($subcopy) 
     @slot('subcopy') 
      @component('mail::subcopy') 
       {{ $subcopy }} 
      @endcomponent 
     @endslot 
    @endisset 

    {{-- Footer --}} 
    @slot('footer') 
     @component('mail::footer') 
      © {{ date('Y') }} {{ config('app.name') }}. All rights reserved. 
     @endcomponent 
    @endslot 
@endcomponent 

它成功发送电子邮件,但包含电子邮件的是这样的:

This is your logo 
![Some option text][logo] 

[logo]: http://myshop.dev/img/my-logo.png "Logo" 

图片不显示

我该如何解决这个问题?

我按照这个参考:https://medium.com/@adnanxteam/how-to-customize-laravel-5-4-notification-email-templates-header-and-footer-158b1c7cc1c

+0

Laravel文件表明,它不具有图像的电子邮件组件。你很可能必须自己做。 –

+0

@Stuart Murphy,你是什么意思?试着更详细地回答 –

+0

你是从本地发送电子邮件吗? –

回答

0

尝试输出<img>标签内的图像:

<img src="{{ $message->embed(asset('img/my-logo.png')) }}" alt="alt here"> 
+0

这是一样的。结果如下:'alt here'。我使用:https://laravel.com/docs/5.4/mail。看起来不一样 –

+0

如何使用laravel的嵌入方法?检查已编辑的答案 – Sletheren

+0

存在错误:'未定义的变量:消息' –

相关问题