javascript - 带图像的 Strapi 电子邮件模板
问题描述
我正在使用strapi-provider-email-nodemailer,我想知道是否可以编写和发送带有img标签的自定义电子邮件模板,如果可以,那么如何做到这一点。
解决方案
是的,您可以自定义电子邮件模板。由于您使用的是电子邮件提供商,我想您知道如何在控制器中编写逻辑。
这是一个带有自定义正文和文件附件的示例。
'use strict';
const { parseMultipartData, sanitizeEntity } = require('strapi-utils');
module.exports = {
async create(ctx) {
let entity;
if (ctx.is('multipart')) {
const { data, files } = parseMultipartData(ctx);
entity = await strapi.services.modelName.create(data, { files });
} else {
entity = await strapi.services.modelName.create(ctx.request.body);
}
await strapi.plugins['email'].services.email.send({
to: "@hotmail.com",
from: "@gmail.com",
subject: `Application recevied at ${entity.created_at.toLocaleString()} ${entity.name}`,
text: `
No #${entity.id} \n
Content:
${entity.content}
`,
html: `
<h5>${entity.id} </h5>
<table >
<tr>
<td >Applicant</td>
<td>${entity.name}</td>
</tr>
<tr>
<td >Date</td>
<td>${entity.created_at.toLocaleString()}</td>
</tr>
</table>
<img ..... />
<what ever you want />
`,
attachments:entity.files.map(file=>{
return ({
filename:file.name,
href : file.url,
})}
)
});
return entity;
},
};
推荐阅读
- ios - 向 PHPickerViewController 添加选择确认
- linux - 找出在 Linux 中占用 CMA(连续内存分配)的原因
- flutter - Flutter:如何为 sliver 持久标头设置动画?
- javascript - Js:为什么要转移而不是推动?
- r - 在 R 中将 tbl_summary 导出为 png 的替代方法
- node.js - Jest 在我的节点、js 服务器中没有更新反应并与 jest 冲突
- c# - C# 生成类依赖树 - 折叠抽象类
- amazon-web-services - AWS 中的外部可访问 FTP 端点
- javascript - 我想为我的 Angular js 应用程序编写单元测试用例
- sql-server - 多电脑(全球)登录系统