Programación Web

Cómo enviar un email desde Bonfire (Codeigniter)

Aunque hasta ahora nunca hemos hablado de Bonfire, sí lo hemos hecho de Codeigniter. Presentamos rápidamente qué es Bonfire y vamos al lío de enviar un email desde el mismo.

¿Qué es Bonfire 🔥?

(Lo de la llamita es porque Bonfire significa “hoguera” en inglés)

Sencillo, Bonfire es un CMS open source para Codeigniter, extiende las funcionalidades más habituales de Codeigniter para ahorrarnos tiempo a los desarrolladores. Personalmente una de las cosas que más interesan de Bonfire es que los modelos ya vienen con los métodos típicos preparados, como las inserciones o los find_by… echa un ojo a la documentación y si te gusta deja un comentario.

Visto, sigamos.

Enviando un email desde Bonfire Codeigniter

Esto es también ridículamente fácil, Bonfire integra una librería lista para enviar email. Para usarla sigue estos pasos:

  1. Ten listo un servidor de correo, como Postfix (damos por hecho que lo tienes, ya contaremos otro día cómo montar uno).
  2. Prepara el contenido para enviar, puede ser directamente un vista, es la forma buena de enviar emails sacándole jugo a la plataforma. Esta parte la obviamos, puede ser también un string.
  3. Carga la librería en el controlador, así:
    $this->load->library('emailer/emailer');
  4. También en el contraolado (sé que es obvio, no quiero ofender tu inteligencia) inserta un código como éste para enviar y manejar los posibles errores.
$data = array(
   'to' => $emailDestino,
   'subject' => 'Asunto',
   'message' => $contenido
);
if ($this->emailer->send($data))
{
   //Mensaje de confirmación de éxito
   Template::set_message('Se envió el mensaje!!', 'success');
}
else
{
   //Triste mensaje de error en el envio
   Template::set_message('Unable to send an email: '. $this->emailer->errors, 'error');
}

Algunas cosas a tener en cuenta son:

  • En la respuesta de la librería emailer podemos tener falsos mensajes de éxito, esto se debe a que se obtiene true siempre que el email se entrega al MTA, que no es lo mismo que decir que el MTA ha entregado el correo correctamente. Pero como esto ya depende del servidor de email queda fuera de nuestro alcance.
  • Template::set_message escribirá en la vista si está bien preparada para ello, si no, no, pero ésta es la forma correcta de hacerlo.
  • Ten cuidado con esto para evitar problemas de spam reporting en los ISPs, vaya, no dejes que se envíen muchos emails.

Y esto es todo. Espero que haya sido útil.

fruiz

Share
Publicado por
fruiz

Recent Posts

Agentic commerce en Shopify: la última noticia que debe motivarte a migrar ya

“OpenAI lanza Instant Checkout: ahora puedes comprar desde ChatGPT, con soporte para más de un…

56 años atrás

¡Adiós SaaS! La Revolución del Software Empresarial con AI Tailorware Está Aquí

¿Sigues atrapado en los SaaS tradicionales? ¡Es hora de despertar! AI Tailorware está cambiando las…

56 años atrás

Aranceles Trump y Shopify: Impacto en tu Tienda Online

Recientemente, el expresidente Donald Trump ha dado un giro al comercio electrónico internacional con nuevas…

56 años atrás

¿Sabías que Cell Easy está hecha en WordPress? Y funciona que da gusto

A veces WordPress tiene fama de ser “para amateurs”... y oye, que sí, que hay…

56 años atrás

El SEO aspiracional, nueva tendencia en el sector del lujo

Hoy te traigo un artículo del compañero (aunque ya nunca escribe, ejem) y CEO de…

56 años atrás

La Importancia del Soporte Técnico 24/7 en Tu Tienda Online

Si quieres competir en el mundo digital de hoy en día, donde las compras no…

56 años atrás