Gidon şablonlarını Tetikleyici E-posta uzantısıyla kullanın

Uzantının yapılandırılması sırasında bir "Şablon koleksiyonu" parametresi belirttiyseniz e-postalarınız için Gidon şablonları şablonları oluşturabilir ve yönetebilirsiniz.

Şablon toplama yapısı

Her belgeye, şablon koleksiyonunuza yazdığınız belgelerde şablon adı olarak kullanacağınız unutulmaz bir kimlik verin.

Şablon belgesi aşağıdaki alanlardan herhangi birini içerebilir:

  • konu: E-postanın konusu için bir şablon dizesi.
  • metin: E-postanın düz metin içeriği için bir şablon dizesi.
  • html: E-postanın HTML içeriği için bir şablon dizesi.
  • amp: E-postanın AMP4EMAIL içeriği için bir şablon dizesi.
  • ekler: Değer olarak şablon dizelerine sahip bir dizi ek; Desteklenen Nodemailer seçenekleri : utf-8 dizesi, özel içerik türü, URL, kodlanmış dize, veri URI'si ve önceden oluşturulmuş MIME düğümü (e-postanızın bulut sunucusunun dosya sistemine erişimi olmadığını unutmayın).

Örnek bir şablonun following gibi bir kimliği ve içeriği olabilir:

{
  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}}"
    }
  ]
}

Şablonları kullanarak e-posta gönderin

Şablonları kullanarak e-posta dağıtmak için, posta koleksiyonunuza belge eklerken name ve data özelliklerini içeren bir template alanı ekleyin. Örneğin, yukarıdan following şablonumuzu kullanarak:

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"
      },
    },
  });

Şablon Kısmileri

Şablon belgesinde {partial: true} değerini belirterek yeniden kullanılabilir kısmileri kullanarak şablonlar oluşturabilirsiniz. Standart veri alanlarının her biri ( subject , html , text ve amp ) yalnızca kendi ortamında kullanılan kısmi olarak tanımlanacaktır. Örneğin, footer olarak adlandırılan kısmi bir veri aşağıdaki gibi olabilir:

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

Başka bir şablonda, adına (belge kimliği) atıfta bulunarak kısmiyi ekleyin:

<p>This is my main template content, but it will use a common footer.</p>

{{> footer }}