我正在使用 Strapi-provider-email-nodemailer,我想知道是否可以编写和发送带有 img 标签的自定义电子邮件模板,如果可以,那么如何做到这一点。
答案 0 :(得分:0)
是的,您可以自定义电子邮件模板。 由于您使用的是电子邮件提供商,我想您知道如何在控制器中编写逻辑。
这是自定义正文和文件附件的示例。
'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;
},
};