You are here

Creando una lista de correo con Simplenews

En algunos sitios web se requiere crear una lista de correo donde los visitantes o bien una lista de usuarios reciban actualizaciones en su inbox.

Para lograr esto en drupal 7 se utiliza el modulo simplenews junto con algunos módulos más para lograr correos más completos.

En el siguiente tutorial explicare como hacerlo, no explicare todas las cosas que se pueden hacer con simplenews y la serie de módulos que lo acompañan, si no que me enfocare a hacer una lista que mande correos en html a partir de una selección de nodos.

Empecemos con los modulos que usaremos:

Simplenews

Este es el modulo principal con el que mandaremos newsletters.

HTML mail

Este modulo sirve para poder mandar correos con estilos en lugar de simples correos planos con ligas

Pathologic
Este módulo trabaja con el modulo HTML Mail y sirve para convertir los urls relativos en absolutos. 

Emogrifier

Convierte la hoja de estilo (css) del sitio a una hoja de estilo que se pueda integrar dentro del correo. 

Mail System
Este modulo lo requiere el modulo HTML Mail

CCK
También usaremos un poco de este modulo que sirve para casi todo en Drupal, en este caso lo usaremos para agregar algunas referencias a nodos.

Entity Reference

Este modulo sirve para crear un campo de cck que nos permita agregar nodos a el boletin

Entity API
Solo lo utilizamos para poder usar el modulo de entity reference.

1- Activar modulos

El primer paso sera activar estos modulos.

Una vez activados los modulos, veremos que en añadir contenido aparece un nuevo tipo de contenido que se llama Simplenews newsletter. Teoricamente al escribir algo nuevo con este tipo y configurar una dirección para enviar correos podriamos empezar a mandar correos (solo que no tendriamos a quien) pero sera mejor configurar un poco más antes de empezar.

2- Configurar Simplenews para mandar correos

El segundo paso sera configurar el modulo de simplenews para poder mandar boletines y correos de prueba.

Entramos al path: admin/config/services/simplenews

se vera la siguiente pantalla:

administración simplenews

Por default simplenews crea una categoría con el nombre del sitio web. Las categorias vienen siendo los canales o las diferentes listas de correo a las que se podra mandar y a las que un usuario podra suscribirse. En el caso más sencillo solo se requiere usar la que genera al inicio el modulo.

Empezaremos por configurar en la pestaña de opciones, al entrar se vera esta pantalla:

Newsletter

Por default los boletines se mandan en formato plano, en este caso usaremos la opción HTML para mandar correos con imágenes y diseño.

La prioridad no es necesario activarla y la acción por default al mandar esta bien mandando un correo de prueba (para evitar mandar por error boletines no terminado a una lista bien grande de suscriptores)

Después esta la dirección de prueba que es una o varias direcciones a las que se mandar correo de prueba para revisar el boletín antes de el envío definitivo, se pueden poner varias direcciones separadas por comas.

Finalmente esta la configuración de con que cuenta se mandara el boletín:

Mandar correo con simplenews

Se agrega el nombre con el que llegara el correo y la dirección de correo para enviar, es importante usar direcciones del dominio que se manda ya que si bien en muchos casos se puede mandar el correo con otras cuentas (por ejemplo de gmail o yahoo, etc) se corre riesgos por ejemplo que los correos que salgan empiecen a ser marcados como spam.

finalmente se salva la configuración.

 

Por el momento faltara solo configurar la categoria para esto se tiene que volver a la configuración general del modulo admin/config/services/simplenews/ y tocar en editar en la categoria

se vera una pantalla como la siguiente:

configurar categoria

dos cosas se tienen que configurar la opción de que hacer cuando se crea una nueva cuenta, quizas la mejor opción sea la de default on para que al crearse una cuenta se suscriba automaticamente (esto no aplica si se tiene varias categorias)

Despues se tiene que configurar los email settings (parametros de correo) aqui es importante marcar que sea HTML el formato que se mande esto se tiene que hacer con cada categoria que se vaya a crear si no, aun que en los parametros generales diga que el correo sera HTML mandara los boletines en formato plano.

3- Modifica el tipo de contenido para agregar nodos
Una de las cosas que uno espera que simplrenews podria hacer es generar un resumen de noticias cada cierto tiempo y mandarlo a los suscritos a la categoría, existe un modulo que se supone lo hace pero en drupal 7 todavía no funciona. así que la idea sera poder crear un boletin en el que se seleccione los articulos (o algun otro tipo de contenido) que queremos que vaya dentro del boletin a enviar.

Primero tenemos que instalar los modulos entity api y entity referece

isntalar modulos entity reference y entity api

Una vez instalados tenemos que entrar a la siguiente ruta admin/structure/types en esa direccón tenemos que buscar el tipo de contenido de simplenews que se llama Simplenews newsletter, entramos a el manejo de campos. Lo que se vera son los campos que trae por default este tipo de contenido y que son casi iguales a los de un articulo o una pagina, solo que con un campo que permite escoger la categoría de envio. Ahora lo que haremos es agregar un nuevo campo, el que dice Entity Reference:

Entity reference field
El tipo de widget sera autocomplete y en el label puede ponerse un nombre descriptivo en este caso le pondremos simplemente articulo. Al tocar el boton de salvar aparecera la siguiente pantalla con los parametros del campo

Parametros campo Entity reference

Lo unico que haremos en esta pantalla sera seleccionar los tipos de contenido que podremos agregar a nuestro boletin y salvar el campo. se salvan los cambios y se vuelve a entrar a editar los parametros y se agrega que la cantidad de nodos sea ilimitada (o el numero de nodos que se pueden agregar)

Se tiene que ir a la pestaña de field display e indicar de que manera se mostrara este campo. podremos que se oculte el label y que se muestre como render entity y dentro de este como teaser (resumen) con ligas.

render display

Si todo esta bien configurado al crear un nuevo boletin (simple newsletter) se vera un nuevo campo que al escribir muestra los titulos de los nodos que podemos agregar al boletin

campo entity reference funcionando

Ahora tendremos la posibilidad de mandar un boletin por correo que a parte de tener el campo de body con datos (y el titulo) tendra incluidos todos los nodos que se seleccionen junto con sus ligas e imágenes, bueno esta parte de ligas e imágenes requiere que configuremos algunas cosas más.

Por el momento lo ideal seria crear un boletin y agregarle unos nodos y salvarlo para ver la opción de mandar un boletin

4- Enviar boletín

Al salvar el boletin de prueba veremos las siguientes pestañas
pestañas newsletter
Tocamos la que dice Newsletter y veremos dos opciones

opciones de envio newsletter

La primera es mandar un correo de prueba y la segunda mandar un newsletter (boletín). Al mandar una prueba el correo solo llegara a las direcciones de correo de prueba que se configuraron en la administración de simplenews, esta es la mejor opción para revisar que este correcto el boletín. la segunda opción es enviar, se selección esta opción y lo que sucedera es que ya no se puede volver a enviar el correo, también el correo no se enviara hasta que corra el cron.

5- Configurar envio de correo con HTML

 Si bien ya podemos enviar boletines con una selección de nodos, estos boletines todavía no saldran con fotos o diseño, para esto tenemos que configurar el modulo html. Primero entraremos a la sección general de correos admin/config/system/mailsystem para configurar con que modulo se mandaran. se seleccionara la opción de HTMLmaiSystem para todo:

parametroscorreogeneraldrupal.jpg

Al entrar no se muestra la opción de Simplenews module class para que aparezca se tiene que ir más abajo y agregar un new settings buscando el modulo de simplenews

new settings html module

Se salva y se tendra acceso a colocar el parametro de HTMLMailSystem.

El theme que se usara puede ser cualquiera, en general se recomienda usar uno muy sencillo para que no tener problemas ya que los correos generalmente solo usan html muy sencillo.

Ahora tenemos que ir a configurar el modulo de HTML, se entra a la siguiente ruta admin/config/system/htmlmail

lo que se tiene que configurar es poco, seleccionar el theme que se usara (el mismo que se selecciono en la configuración anterior y en el tercer paso seleccionar el filtro que se usara para mandar correos, puede ser el de Full HTML.

parametros modulo html en drupal

Los modulos de emogrifier y de pathologic estan dentro del filtro, tenemos que ir a ese filtro para saber si estan correctamente activados.

la ruta es más o menos esta admin/config/content/formats/2 dentro se vera los filtros que estan activados se tiene que activar Emogrifier y pathologic y colocarlos al final de la lista.

filter formats

después de hacer esta configuración se crea un boletín con nodos añadidos y se manda un correo de prueba. Con esta configuración debe recibirse un correo con html incluido, formando, ligas absolutas a los nodos e imágenes.

 

6- Agregar suscriptores a la categoría de envio.

Pasa un paso final, tenemos todo configurado para mandar correos pero no tenemos a quien finalmente mandarlo. Tenemos que ir la administración de personas (admin/people/simplenews) y tocar la pestaña de suscripciones a el newsletter:

suscripciones newsletter

Veremos que se puede agregar dirección por dirección o bien en la liga de Mass suscribe es posible agregar muchas direcciones de una sola vez a una o varias categorías. También al instalar el modulo de simplenews se crea un bloque que permite suscribirse a los visitantes al sitio a una categoría. Es importante revisar la sección de permisos ya que muchas veces los usuarios no se pueden suscribir si no tienen permiso. 

Estos serian los pasos para poder mandar boletines de correo (newsletter) con el modulo de simplenews, si bien existen aplicaciones más robustas para mandar boletines y administrar (por ejemplo mailchimp o mailman) simplenews permite tener esta opción e integrarlo con los contenidos de drupal, de hecho es posible integrarlo a rules para poder tener envios dependiendo de que suceda en el sitio web. Espero este tutorial sea de gran utilidad y que cualquier duda la escriban en los comentarios.

Versión: 
Categorias: 

Comments

En principio te agradezco infinitamente que hayas dedicado parte de tu vida para realizar este tutorial, Koffer!

Permíteme preguntarte, ¿Usar tantos módulos será conveniente? En verdad recién empiezo con drupal y no me llevo bien con depender de cosas externas ... eso no quiere decir que no haga uso de los maravillosos módulos que desarrolla la comunidad, solo que pienso a futuro que pasará con los desarrolladores que los mantienen.

Por último a sabiendas que te siento adelantado en el tema, ¿Puedes decirme? si solo quisiera enviar un nodo que yo elija, o simplemente un texto que escriba en formato html Escrito por mí o heredado del tema ¿Cuales son los módulos que necesito?
Digamos que aún no pienso crear boletines, solo quiero mejorar el aspecto de los correos. Lo que si me interesa es el bloque de las suscripciones.

Vuelvo a darte las gracias,
un fuerte abrazo y bendiciones desde Argentina!

Hola. En general en drupal se genera la funcionalidad con varios modulos. En el caso de este tutorial podria usarse menos modulos por ejemplo solo simplenews, pero no tendrias correos con html si no correos planos. Si quieres mandar un nodo y no un grupo de nodos puedes entrar a la administración de tipos de contenido ir a editar en tipo de contenido que quieras que se pueda mandar y buscar donde dice:

Use as simplenews newsletter

Esta en las opciones de publicación (publish option).

De esa manera podrias mandar nodos (articulos, o post de blog etc).

En cuanto a la decisión de usar o no usar un grupo de modulos, es dificil. En muchos casos creo que solo debes pensar en lo que estas desarrollando actualmente y construir con los modulos que te sirvan ¿a futuro que pasara? imposible saberlos, a no ser claro que te involucres en el desarrollo de ese modulo :)

 

Admin, gracias por la respuesta. Sin duda que participar del desarrollo de los mismos es un gran desafío! Los instalaré y veré como va todo.
Saludos!

Me ha parecido un muy buen tutorial. Sin embargo he seguido punto por punto lo indicado y me he encontrado con 2 dificultades:
- La primera es que utilizando el filtro de Emogrifier, envia los correos sin el contenido de los nodos, solo con el Title y Body.
- La segunda es que me envia el boletín con un Theme diferente al que yo le he indicado (Utilizo AT Commerce).
Agradecería que me indicases por que pueden ser estos dos errores, gracias.
Un saludo!

Entonces hiciste la prueba con el modulo Emogrifier activandolo y desactivandolo? 

En cuanto al Theme, no todos los themes funcionan de hecho yo recomendaria usar uno muy simple.

Fantástico, ha salido todo a la perfección!

Parecido a Fernando no me funciona el tema, solo me envía los títulos e enlaces en formato html, pero no la plantilla con los colores de fondo y la cabecera.

Hay dos cositas que me quedaron en el tintero que no pude configurar.
- Cuando voy a crear un Boletín desde Estructura>Tipos de contenido> Boletín, el campo Categoría no he logrado formatearlo de tal modo que pueda elegir varias categorías simultaneas. Solo me permite una ¿Es posible hacerlo?
- La cabecera del correo lo envía con un mensaje en inglés "Click here to view this message on the web.", he buscado donde modificarlo, pero no lo he encontrado. El modulo htmlmail ofrece una plantilla htmlmail.tpl.php, pero esa variable no puedo detectarla. Quizás este equivocando el módulo.

Lo demás fantástico! sin problemas lo he podido configurar, estoy sorprendido!
Muchas gracias, y seguimos en contacto!

La parte de las categorías simultaneas suena a un problema con la configuración en el campo cck.

En cuanto al "Click here to view this message on the web." también estoy buscando como quitarlo.

 

Ese texto esta en el archivo tpl del modulo htmlmail, en la linea 65 de htmlmail--simplenews.tpl.php

Tengo una duda, como puedo hacer para que se envíe contenido privado por mail?, por ejemplo esos contenidos que sólo pueden ver los usuarios autenticados?.

Saludos!

Hola admin.

Yo también quiero agradecerte el tutorial.
La verdad es que cada módulo tiene su breve información y para dar soluciones que requieren varias, es difícil montar el pequeño rompecabezas sin este tipo de ayudas.

Tengo drupal 7 y también tengo problemas con el contenido del newsletter. Me crea bien el contenido con sus artículos relacionados, pero al enviarlos ya sólo me envía el body del newsletter (el primer día si lo hacía y luego ya no). Será tema de configuración de filtros, es un poco lío pero ya lo solucionaré.

Lo que si quiero consultarte es lo siguiente:
- he visto que el módulo "Echo" puede funcionar con el HTML Mail y su función parece muy similar a la emogrifier y da la impresión de ser más sólida. Lo has probado? Funciona bien?
- En mi caso me interesaría que el boletín se lanzase automáticamente cada día que hay nuevos contenidos, incluyendo todas esas novedades. Ya veo que comentas que en drupal 7 no hay módulo para ello, pero se puede hacer de alguna otra forma? Hay triggers, acciones, rules, etc. Algo de esto puede servir?

Muchas gracias y un cordial saludo.

Una manera de automatizar el envio cada cantidad de nodos creados o bien por fecha ¿quizas con rules? 

Buenas, seguimos aquí inspeccionando.

He encontrado algunas cuestiones interesantes que quiero compartirles.

En una pregunta de Drupal Answer http://drupal.stackexchange.com/questions/27063/how-to-send-html-email/2..., (esto lo habían puesto de referencia en un showcase de drupal) contaban como implementaron estos hombres el sistema html, agregando ese código y usando las plantillas (que aquí viene lo que puedo compartirles) de Mailchimp https://github.com/mailchimp/Email-Blueprints/tree/master/templates y asi solucionaron el asunto. Yo solo he probado las plantillas con simple Mails y funcionan a la perfección! El codigo no lo he tocado ... es que aun no estoy en posibilidades de editar código (por falta de conocimiento), y esta solución mediante módulos me viene al pelo.

Lo que necesito es ampliar sus funcionalidades y quizás uds puedan ayudarme.
Estoy intentando usar Simple Mail para que envíe mensajes html el modulo de Suscripciones y Contact. ¿Pueden guiarme para poder encontrar una solución? Digamos ponerle color a las suscripciones y mensajes de contacto! que son la cara de nuestro sitio mediante email.

Un fuerte abrazo a todos de Argentina!

A quien corresponda, me gustaría saber dónde tengo algo mal configurado que no puedo ver el contenido Simplenews.
Voy a Contenido> Agregar Contenido > y no veo nada.

Me podrían orientar qué me está faltando?

Muchas gracias.

Saludos

isntalar y desintalar el modulo de Simplenews? no vez el tipo de contenido?

No he probado desinstalar e instalar. El tipo de contenido no lo veo, Voy a Contenido> Agregar Contenido > y no veo nada.

Primero, mil gracias por el tutorial. La verdad es que iba encontrando cosas sobre Simplenews y el tuyo ha sido el más útil. Así que ya puestos, tengo varias dudas:

1) ¿El nodo de newsletter que crea por defecto, se puede redirigir a uno ya creado? Me explico: yo en la página principal ya tengo un bloque con las noticias que sep ublican diariamente. El Simplenews lo instalé por el tema del boletín, de modo que me gustaría que tanto desde el bloque de subscripción (donde pone "noticias anteriores") como el enlace a la página de noticias contenido en el mail del boletín, enlazaran a una vista que ya tengo creada de noticias y no al nodo que Simplenews me genera por defecto.

2) Cuando intento cambiar en la configuración "new setting>Add a new module and key to the setting list" el módulo para ponerle como dices el Simplenews, una vez lo guardo, me da problemas relativos al site-name.php y no se fija la configuración. ¿Alguna solución o aprotación de por qué me sucede esto?

¡¡Gracias!!

Este tutorial salio de un trabajo en el que tuvo que explorar bastante como usar el modulo de Simplenews. 

Sobre tu primera duda, lo que quieres es que una vez se suscriba alguien a la lista de correo se redirija a un url diferente al que te da simplenews?

la segunda duda no entiendo muy bien.

Hola admin,

1) sí, sobre la primera duda: El módulo Simplenews te crea por defecto una taxonomía, un nodo y un bloque para cada categoría. El hecho es que yo, independientemente, ya tenía creado una página dentro de una vista de "noticias" con todos los resúmenes de las noticias (las actuales y las anteriores), porque me intersaba mostrarla de diferentes maneras en diferentes lugares de la web. Por otro lado, en la página de inicio, tengo el bloque de subscripción al newsletter (el creado por defecto con el Simplenews) donde debajo hay un enlace a "previous issues". Este enlace me gustaría modificarlo y que, en lugar de llevarte al nodo por defecto de Simplenews, te llevara a la página de la vista, que a su vez, sería le mismo enlace que los subscriptores reciben en su correo electrónico como "más información". ¿Es posible?

2) Por otro lado, en el punto 5 del tutorial (5- Configurar envio de correo con HTML) hablas de: "Al entrar no se muestra la opción de Simplenews module class; para que aparezca se tiene que ir más abajo y agregar un new settings buscando el modulo de simplenews". Mi duda es que yo, cuando selecciono el módulo Simplenews y guardo, en realidad no se guarda la configuración del módulo en "New Setting". Me aparece un cartel de error en el que me dice algo del template.php del tema que le asigno. No sé si tiene que ver o no con lo de que no guarde correctamente la asignación del módulo Simplenews.

Gracias!

Hola quisiera saber si esta pagina aun está activa, quería postrar una oferta de empleo para mi sitio http://deoferta.net es sobre ofertas, cupones y descuentos, pero no me puedo registrar. gracias.

Juan te acabo de mandar un correo, tu cuenta esta activa por si quieres publicar la oferta de trabajo relacionada a drupal.

Add new comment