Temas de Drupal. Plantilla de carta de notificación para el módulo de formulario web.
El catálogo que creamos mediante los módulos CCK, Taxonomy y Webform permite notificar por correo electrónico tanto al cliente como al administrador del sitio (gestor) sobre un pedido realizado. Sin embargo, en el mensaje recibido por el gestor solo aparecen el nombre del producto, la cantidad y los datos del cliente. Creo que sería muy útil que también llegara un enlace directo al producto solicitado.
Actualmente, al realizar un pedido, se recibe un correo electrónico con el siguiente contenido:
Enviado el martes, 16 de noviembre de 2010 - 15:56 Usuario: Admin Respuestas: Nombre del producto: Plato colorido Cantidad: 1 E-mail: levmyshkin2@mail.ru Dirección: Ciudad de Omsk Preferencias y observaciones: Las respuestas pueden consultarse aquí: http://drupal/node/14/submission/1
Podemos configurar la plantilla del correo desde la configuración del formulario web:
En la configuración hay una sección para editar la plantilla del mensaje: E-mail template:
Default template: permite usar y editar la plantilla por defecto directamente en el área inferior.
Custom template: permite usar una plantilla personalizada desde la carpeta templates del módulo Webform.
Vamos a empezar por editar la plantilla por defecto. Para agregar datos al mensaje, podemos usar Token values, que son variables como los campos del formulario, variables globales del sitio, nombre del usuario, variables GET y POST para transmitir datos en sesiones.
En "Included e-mail values" podemos seleccionar qué valores de los campos se incluirán en el mensaje.
Para crear un enlace al producto solicitado, necesitamos añadir un campo id
que se rellene automáticamente con el ID del producto. Este campo debe tener como valor por defecto %get[id]
, y en el enlace al formulario de pedido del producto se debe añadir el parámetro id
. De modo que el enlace tenga esta forma:
<a href="<?php print base_path(); ?>node/14?product=<?php print drupal_get_title(); ?>&id=<?php print arg(1); ?>">Pedir producto</a>
Después, en la configuración del campo id
, hay que desactivar su edición (esto también puede hacerse con el campo del nombre del producto):
Ahora, al hacer un pedido, el correo incluirá una línea con el ID:
Enlace al producto: http://%site/node/%value[id_product]
Aquí, id_product
es el nombre del campo que contiene el ID del producto, y %site
es una variable que representa el nombre del sitio.
Así, el mensaje de pedido incluirá un enlace directo al producto solicitado.