«Un modo de añadir un código de referencia a los emails que llegan desde tu web»
Seguro, que al igual que yo, te has encontrado alguna vez en tu vida en la tesitura de tener que añadir un código de referencia a los correos electrónicos que recibes desde el formulario de contacto de la web de alguno de tus clientes.
Lo que a priori podría resultar algo complicado de hacer, puesto que Contact Form 7 no nos ofrece esta posibilidad de una forma directa, se puede resolver con estos tres pasos básicos:
- Creamos una función en el archivo functions.php de nuestro tema hijo.
- Instalamos el plugin Contact Form 7 – Dynamic Text Extension
- Personalizaremos nuestros formularios con la información nueva.
CREACIÓN DE LA FUNCIÓN CÓDIGO DE REFERENCIA
0 1 2 3 4 5 6 7 8 9 10 11 | /* Generar Código de Referencia - Función que genera un código aleatorio de 10 caracteres de longitud formado por letras mayúsculas y números */ function samuriosa_genCodigoTicket() { $len = 10; $caracteres = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"; for ($p = 0; $p < $len; $p++) { $string .= $caracteres[mt_rand(0, strlen($caracteres)-1)]; } return $string; } add_shortcode('codigoticket', 'samuriosa_genCodigoTicket'); |
Esta función nos crea un shortcode «[codigoticket]» que estará compuesto por 10 caracteres aleatorios de los listados en la variable «$caracteres». Posteriormente emplearemos este shortcode en nuestros formularios para poder acceder al valor de nuestra referencia.
INSTALACIÓN DEL PLUGIN CONTACT FORM 7 – DINAMIC TEXT EXTENSION
Descargamos el plugin desde el Repositorio de Plugins de WordPress.org y lo instalamos en nuestro sitio web. Una vez descargado e instalado simplemente lo activamos y ya estaremos listos para incorporar cientos de funcionalidades nuevas a nuestro formulario de contacto.
PERSONALIZACIÓN DE NUESTROS FORMULARIOS
Ya sólo nos queda la parte fácil de todo este asunto. Personalizar nuestros formularios para que generen el código de referencia y hacer que lo recibamos en nuestros correspondientes e-mails.
Primeramente debemos incorporar nuestro código de referencia a nuestro correspondiente formulario de contacto, para que se genere el código aleatorio al cargar este. Para ello, desde el plugin Contact Form 7 añadimos un campo a nuestro formulario. De esta manera, un formulario estándar podría quedarnos así:
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <span class="hideMe">[dynamictext ticket "codigoticket"]</span> <p>Nombre (requerido)<br /> [text* your-name] </p> <p>Correo electrónico (requerido)<br /> [email* your-email] </p> <p>Asunto<br /> [text your-subject] </p> <p>Mensaje<br /> [textarea your-message] </p> <p>[submit "Enviar"]</p> |
Posteriormente, podemos ocultar nuestro campo, para que no sea visible al usuario final del formulario. Esto lo haremos añadiendo este estilo css al style.css de nuestro Tema Hijo.
0 1 2 3 4 | span.hideMe{ display:none; } |
Finalmente sólo nos queda incorporar el campo [ticket] en el cuerpo del mensaje que vamos a recibir.
Aquí te dejo un ejemplo, basado en la estructura que viene por defecto en Contact Form 7. Recuerda que puedes personalizarlo todo lo que quieras.
Si te ha gustado este truquillo, lo has probado y te ha funcionado o has tenido algún que otro problema a la hora de implementarlo no dudes en dejármelo en los comentarios. Tu feedback me ayudará a seguir publicando cosillas poco a poco.
Comentarios recientes