Demo de automatización con Gato GraphQL

Enviar automáticamente un correo a todos los suscriptores notificando una nueva entrada

Cada vez que se crea una nueva entrada en el sitio WordPress, envía automáticamente un correo de notificación a todos los usuarios suscriptores.

Leonardo Losoviz
Leonardo Losoviz -
Logo
Image
Target Image

Podemos usar Gato GraphQL para enviar automáticamente un correo de notificación a todos los usuarios suscritos a una lista de correo cada vez que se crea una nueva entrada en el sitio.

En el vídeo de la demo, primero ejecutamos la consulta persistida Enviar un email a los suscriptores notificando de un nuevo post y probamos a enviar un correo con el contenido de una entrada concreta.

Lo probamos pasando la variable GraphQL $postId con el valor 1 en el diccionario JSON y ejecutando la consulta GraphQL. Al comprobar en Mailpit (que intercepta todos los correos), verificamos que efectivamente se envió un correo personalizado a todos los usuarios.

Por ejemplo, el usuario "Blogger Davenport" recibió el siguiente correo:

Correo de notificación sobre una nueva entrada enviado al usuario
Correo de notificación sobre una nueva entrada enviado al usuario

Por defecto, esa consulta persistida GraphQL envía el correo a todos los usuarios. También podemos especificar a qué usuarios enviar el correo, como aquellos que se han suscrito a alguna lista de correo. Esto se hace descomentando el input users(filter:) en la consulta:

{
  users
  # # Retrieve only users subscribed to an email list (uncomment if needed)
  # (
  #   filter: {
  #     metaQuery: {
  #       key: "email_list",
  #       compareBy: {
  #         arrayValue: {
  #           value: "new_posts",
  #           operator: IN
  #         }
  #       }
  #     }
  #   }
  # )
}

Este filtro recupera entonces los usuarios que tienen la meta email_list (que es un array de nombres de listas) con el valor new_posts.

Al ejecutar la consulta de nuevo, esta vez el correo se envió a 3 usuarios (aquellos suscritos a esa lista de correo).

Por último, automatizamos el proceso, de modo que cada vez que haya una nueva entrada en el sitio, el correo de notificación se envíe automáticamente. Para ello, publicamos la regla de automatización Send notification email to users when there is a new post.

Esta regla de automatización se activa mediante el hook gatographql:draft_to_publish. Así, cada vez que el estado de una entrada cambia de draft a publish, se envía automáticamente un correo de notificación a los usuarios.


Suscríbete a nuestra newsletter

Mantente al tanto de todas las novedades de Gato GraphQL.