إذا حدّدت المَعلمة "مجموعة النماذج" أثناء إعداد الإضافة، يمكنك إنشاء نماذج Handlebars وإدارتها لرسائلك الإلكترونية.
بنية مجموعة النماذج
امنح كل مستند معرّفًا يسهل تذكّره واستخدِمه كاسم للنموذج في المستندات التي تكتبها في مجموعة النماذج.
يمكن أن يتضمّن مستند النموذج أيًا من الحقول التالية:
- subject: سلسلة نموذجية لموضوع الرسالة الإلكترونية.
- text: سلسلة نموذجية لمحتوى الرسالة الإلكترونية بنص عادي.
- html: سلسلة نموذجية لمحتوى HTML الخاص بالرسالة الإلكترونية.
- amp: هي سلسلة نموذجية لمحتوى AMP4EMAIL الخاص بالرسالة الإلكترونية.
- المرفقات: مصفوفة من المرفقات تتضمّن سلاسل نماذج كقيم. خيارات Nodemailer المتاحة: سلسلة utf-8، ونوع محتوى مخصّص، وعنوان URL، وسلسلة مشفّرة، ومعرّف موارد موحّد للبيانات، وعقدة MIME مُنشأة مسبقًا (يُرجى العِلم أنّه لا يمكن الوصول إلى نظام الملفات في خادم السحابة الإلكترونية من خلال بريدك الإلكتروني).
قد يتضمّن نموذج مثال رقم تعريف following
ومحتوى مثل:
{
subject: "@{{username}} is now following you!",
html: "Just writing to let you know that <code>@{{username}}</code> ({{name}}) is now following you.",
attachments: [
{
filename: "{{username}}.jpg",
path: "{{imagePath}}"
}
]
}
إرسال رسائل إلكترونية باستخدام النماذج
لإرسال رسالة إلكترونية باستخدام النماذج، عند إضافة مستندات إلى مجموعة الرسائل،
أدرِج حقل template
مع السمتَين name
وdata
. على سبيل المثال،
باستخدام نموذج following
أعلاه:
admin
.firestore()
.collection("MAIL_COLLECTION")
.add({
toUids: ["abc123"],
template: {
name: "following",
data: {
username: "ada",
name: "Ada Lovelace",
imagePath: "https://example.com/path/to/file/image-name.jpg"
},
},
});
نماذج جزئية
يمكنك إنشاء نماذج باستخدام أجزاء قابلة لإعادة الاستخدام
من خلال تحديد {partial: true}
في مستند النموذج. سيتم تعريف كل حقل من حقول البيانات العادية (subject
وhtml
وtext
وamp
) على أنّه جزء
يُستخدم فقط في بيئته الخاصة. على سبيل المثال، قد يحتوي جزء باسم footer
على بيانات مثل:
{
partial: true,
html: "<p>This mail was sent by ExampleApp, Inc. <a href='https://example.com/unsubscribe'>Unsubscribe</a></p>",
text: "This mail was sent by ExampleApp, Inc. Unsubscribe here: https://example.com/unsubscribe"
}
في نموذج آخر، أدرِج الجزء من خلال الإشارة إلى اسمه (معرّف المستند):
<p>This is my main template content, but it will use a common footer.</p>
{{> footer }}