Blogpocket [tumb ] por Antonio Cambronero



Cómo escribir un mensaje de bienvenida para tus lectores

Hace años no estaba bien visto el uso de cookies para almacenar información de aplicaciones online en el ordenador. Aún hoy, no está de más avisarlo. Las cookies se utilizan, por ejemplo, en el sistema de comentarios de WordPress para no tener que escribir la información del usuario (url, e-mail, nick, etc.) cada vez que se quiere enviar un mensaje.

El trozo de código PHP que les traigo hoy, permite detectar si el lector de tu blog es un comentarista o no (siempre que no se borren las cookies del ordenador desde el que se accede). Simplemente hay que añadir lo siguiente en el lugar, dentro de la plantilla, donde se desea que aparezca el mensaje de bienvenida:

<?php
if(isset($_COOKIE['comment_author_'.COOKIEHASH])) {
$lastCommenter = $_COOKIE['comment_author_'.COOKIEHASH];
echo “Bienvenido otra vez “. $lastCommenter .”!”;
} else {
echo “Bienvenido, invitado!”;
}
?>

En la variable $_COOKIE se recupera el contenido de las cookies (que son simples y pequeños archivos de texto). El sistema de comentarios de WordPress, crea algunas como estas: comment_author_xxx, comment_author_email_xxx o comment_author_url_xxx. Y precisamente la primera es la que se utiliza en el fragmento de código anterior.

La función “isset” comprueba la existencia de cualquier elemento, en este caso la existencia de la cookie que contiene el autor de los comentarios. Así que podemos escribir un mensaje de bienvenida personalizado si existe la cookie (el usuario ya escribió un comentario antes) o un saludo genérico si el lector es nuevo o no escribió nunca un comentario.

Este es un ejercicio interesante de programación pero hay algunos inconvenientes si se implementa. Por ejemplo, no funciona si el lector tiene las cookies inhibidas o, si como dije antes, nunca llega a comentar. Tampoco funciona exactamente si el lector accede al blog desde otro ordenador.

Vía | ifohdesigns

Actualización:

Gracias a Zootropo que en un comentario nos hacía una pequeña enmienda: por supuesto $_COOKIE no es una función, sino una variable.

Posts relacionados

Si te ha gustado el post, no olvides suscribirte a nuestro feed RSS





1 Comentario »

RSS feed para los comentarios de esta entrada. TrackBack URI

  1. Solo una pequeña corrección. $_COOKIE no es una función, es un array superglobal en el que, como es de suponer, se almacenan las cookies.

    Comentario por Zootropo — November 20, 2008 #

Dejar un comentario

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Bajo licencia Creative Commons - Política de privacidad - Alojado en: Ferca - GimpStyle (theme)