Si especificó un parámetro de "Colección de plantillas" durante la configuración de la extensión, puede crear y administrar plantillas de manillares para sus correos electrónicos.
Estructura de colección de plantillas
Asigne a cada documento una identificación memorable que utilice como nombre de plantilla en los documentos que escriba en su colección de plantillas.
El documento de plantilla puede incluir cualquiera de los siguientes campos:
- asunto: una cadena de plantilla para el asunto del correo electrónico.
- texto: una cadena de plantilla para el contenido de texto sin formato del correo electrónico.
- html: una cadena de plantilla para el contenido HTML del correo electrónico.
- amp: una cadena de plantilla para el contenido AMP4EMAIL del correo electrónico.
- archivos adjuntos: una serie de archivos adjuntos con cadenas de plantilla como valores; Opciones de Nodemailer admitidas: cadena utf-8, tipo de contenido personalizado, URL, cadena codificada, URI de datos y nodo MIME pregenerado (tenga en cuenta que su correo electrónico no tiene acceso al sistema de archivos del servidor en la nube).
Una plantilla de ejemplo podría tener un ID de following
y contenido como:
{
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}}"
}
]
}
Enviar correos electrónicos usando plantillas
Para entregar correo electrónico usando plantillas, al agregar documentos a su colección de correo, incluya un campo template
con name
y propiedades data
. Por ejemplo, usando nuestra following
plantilla de arriba:
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"
},
},
});
Parciales de plantilla
Puede redactar plantillas utilizando parciales reutilizables especificando {partial: true}
en el documento de plantilla. Cada uno de los campos de datos estándar ( subject
, html
, text
y amp
) se definirá como un parcial utilizado únicamente en su propio entorno. Por ejemplo, un footer
llamado parcialmente podría tener datos como:
{
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"
}
En otra plantilla, incluya el parcial haciendo referencia a su nombre (ID del documento):
<p>This is my main template content, but it will use a common footer.</p>
{{> footer }}