Listar nuestros posts más populares en base al número de comentarios

Sin necesidad de utilizar ningún plugin, tenemos a nuestra disposición un buen método para listar, según el número de comentarios, nuestros posts más populares (o los más comentados, según queramos enfocarlo con el título que demos a la lista).

No tendremos más que dirigirnos a la barra lateral (sidebar.php; o pie de página, footer.php) de nuestro tema de WordPress y editarla (recomendamos como siempre a Notepad++ para escribir código) con el siguiente snippet:

Copiar y pegar en nuestro template.

Con este código estamos realizando un sondeo general a nuestra base de datos tomando los 7 posts con más comentarios, preparando sus títulos, URLs y número exacto de comentarios que tengan, y disponiéndolo todo en una lista que deberemos por supuesto “decorar” con CSS a nuestro gusto.

Con este método, quedamos como reyes porque no necesitamos largos cálculos para entender cuál de nuestros posts es más visualizado y reservamos al lector un poco de discusión con todos los comentarios que allí se mostrarán al acabar la lectura principal.

Últimos comentarios por categoría

Hoy vamos a ver una manera fácil de conseguir nuestros comentarios mostrados por categoría; por ejemplo, en nuestro índice. De esta manera, podremos crear varias columnas y añadir allí los comentarios recientes que a cada sección del site correspondan.

Tendremos que pegar el siguiente código en el espacio que consideremos adecuado en nuestro template (por ejemplo, tratándose del index.php, justo después de wp_header): copiar y pegar.

En la línea 15, deberemos cambiar los números allí presentes (10 y 20) por las ID numéricas de las categorías de las que deseemos mostrar los comentarios. Dichas ID las conoceremos sobrevolando con el puntero del ratón nuestras propias categorías en la Administración de WordPress.

Los créditos van, una vez más, al foro de WordPress.org, donde podréis encontrar otra versión del truco, que concierne en este caso a sub-categorías.

Esperamos que os atreváis con el código y nos planteéis cualquier duda en los comentarios.

Numerar comentarios

Si nuestro blog recibe periódicamente bastantes comentarios, siempre es útil poder numerarlos para distinguirlos y hacer referencia a ellos rápidamente a medida que el debate avanza.

Para ello, abriremos comments.php en nuestro tema de WordPress y localizaremos el siguiente tag:

<?php foreach ($comments as $comment) : ?>

Justo después de esta línea, iniciaremos el conteo de elementos (comentarios en este caso):

<?php $i = 0; ?>

E inmediatamente después añadiremos el incremento de elementos:

<?php $i++; ?>

A partir de aquí, tan sólo tenemos que mostrar el resultado de la operación allí donde nos convenga en el template con este tag de PHP:

<?php echo $i; ?>

Ya tendremos nuestros comentarios numerados. ¡No dudéis en comentar!

WordPress para iPhone 2.2

Ya está disponible la nueva versión de WordPress para iPhone con 3 importantes mejoras, vamos, básicos …

  • Responder a comentarios
  • Edición de comentarios
  • Resaltado de comentarios pendientes

Vamos, que ya tardaban en estar disponibles estas funcionalidades. Gracias a los desarrolladores por sacar tiempo de donde no lo tienen y ofrecernos esta maravilla de aplicación.

¿Te gustó este post? ¡Compártelo! Bitacoras.com TwitThis Facebook Meneame Google Bookmarks del.icio.us Live Technorati Ping.fm Wikio Turn this article into a PDF! E-mail this story to a friend! Print this article!

4 plugins para fidelizar a tus lectores y comentaristas de tu blog

Lo más importante en el mundo de los blogs son tus lectores. Todo lo que se haga es poco para que se interesen por tu contenido y para que les guste tu blog, cómo y qué escribes. Por tanto, un aspecto fundamental sobre el que tienes que trabajar son los comentarios. Al principio serán pocos, y puede que no se note mucha participación, y esto dependerá mucho del tipo de post que se escriba. En cualquier caso siempre hay que tratar que tu blog sea comment-friendly, y que fomente la participación o la haga lo más fácil posible.

¿Cómo puedes tener tu WP preparado y a punto para cuando lleguen los comentarios? ¿Qué plugins deberías tener instalados para hacer que comentar sea más sencillo y atractivo a tus lectores? ¿Cómo sacar partido a los comentarios para crear lectores fieles?

MCEComments

Puede que a algunos lectores les dé igual, pero otros querrán personalizar y dar un mejor formato a su mensaje. Sobre todo aquellos que tengan otros blogs y quieran que su mensaje destaque en cierta forma. Se lo puedes poner fácil con el plugin MCEComments. Dentro de las opciones del plugin puedes añadir más o menos botones de edición o cambiar ligeramente el estilo del cuadro del comentario. Una opción interesante es permitir que los usuarios puedan redimensionar verticalmente el cuadro de texto para tener más sitio (Enable vertical resizing of the comment field writing area) o añadir el botón “fullscreen”, que convierte todo el navegador en un editor.

Ejemplo de escritura de comentario

Comment Redirect

Todo buen blogger sabe que un primer comentario es una joya. ¿Por qué no enganchar a ese comentarista primerizo a nuestro blog redirigiéndole a una página con nuestros mejores posts? Eso es exactamente lo que hace Comment Redirect. Para configurarlo tenéis que ir a Plugins/Comment Redirect y elegir la página (no valen posts) a la que queréis redirigir.

Comment Relish

¿Te gustaría poder enviar un email a cada nuevo comentarista? Eso es lo que hace Comment Relish. Al igual que el plugin anterior, una vez que un visitante ha hecho un primer comentario, le podrás enviar un mensaje de bienvenida, en el que le podrás informar sobre tu blog, hacerle saber cómo suscribirse por email si lo desea, o simplemente darle las gracias. Este plugin es algo más “agresivo” que el anterior, pero si te trabajas con cuidado una buena carta de presentación, te puede ayudar mucho a fidelizar lectores.

Administración de Comment Relish

CommentLuv

Este es un plugin que agradecerán especialmente aquellos comentaristas que sean a su vez bloggers. El plugin, de forma automática, y mientras el usuario está escribiendo el comentario, busca en el feed del autor el último post que se haya escrito, y añade automáticamente el enlace al final del comentario. Esto hace que comentar sea mucho más atractivo en tu blog, y da a conocer los últimos posts de tus compañeros bloggers. El plugin se puede descargar desde el repositorio de plugins de WordPress.

Administración de CommentLuv

Aspecto de los comentarios con ComLuv

¿Qué otros plugins utilizáis vosotros para gestionar los comentarios? ¿Conocíais éstos?

Combatir el spam desde tu tema

Hemos visto ya varios modos de combatir el spam de comentarios y hoy vamos a ampliar nuestro arsenal con un truco que activaremos en el fichero functions.php de nuestro tema activo, con lo que es totalmente exportable a otros sitios sin modificar configuración alguna.

evitar spam

Lo único que tienes que hacer es añadir este código:

PHP:
  1. function in_comment_post_like($string, $array) {
  2.     foreach($array as $ref) { if(strstr($string, $ref)) { return true; } }
  3.     return false;
  4. }
  5. function drop_bad_comments() {
  6.     if (!empty($_POST['comment'])) {
  7.         $post_comment_content = $_POST['comment'];
  8.         $lower_case_comment = strtolower($_POST['comment']);
  9.         $bad_comment_content = array(
  10.             'viagra',
  11.             'hydrocodone',
  12.             'hair loss',
  13.             '[url=http',
  14.             '[link=http',
  15.             'xanax',
  16.             'tramadol',
  17.             'russian girls',
  18.             'russian brides',
  19.             'lorazepam',
  20.             'adderall',
  21.             'dexadrine',
  22.             'no prescription',
  23.             'oxycontin',
  24.             'without a prescription',
  25.             'sex pics',
  26.             'family incest',
  27.             'online casinos',
  28.             'online dating',
  29.             'cialis',
  30.             'best forex',
  31.             'amoxicillin'
  32.         );
  33.         if (in_comment_post_like($lower_case_comment, $bad_comment_content)) {
  34.             $comment_box_text = wordwrap(trim($post_comment_content), 80, "\n  ", true);
  35.             $txtdrop = fopen('/var/log/httpd/wp_post-logger/nullamatix.com-text-area_dropped.txt', 'a');
  36.             fwrite($txtdrop, "  --------------\n  [COMMENT] = " . $post_comment_content . "\n  --------------\n");
  37.             fwrite($txtdrop, "  [SOURCE_IP] = " . $_SERVER['REMOTE_ADDR'] . " @ " . date("F j, Y, g:i a") . "\n");
  38.             fwrite($txtdrop, "  [USERAGENT] = " . $_SERVER['HTTP_USER_AGENT'] . "\n");
  39.             fwrite($txtdrop, "  [REFERER  ] = " . $_SERVER['HTTP_REFERER'] . "\n");
  40.             fwrite($txtdrop, "  [FILE_NAME] = " . $_SERVER['SCRIPT_NAME'] . " - [REQ_URI] = " . $_SERVER['REQUEST_URI'] . "\n");
  41.             fwrite($txtdrop, '--------------**********------------------'."\n");
  42.             header("HTTP/1.1 406 Not Acceptable");
  43.             header("Status: 406 Not Acceptable");
  44.             header("Connection: Close");
  45.             wp_die( __('bang bang.') );
  46.         }
  47.     }
  48. }
  49. add_action('init', 'drop_bad_comments');

Puedes, por supuesto, añadir o quitar palabras y/o expresiones tras el array llamado $bad_comment_content para personalizarlo según tu necesidad.

¿Te gustó este post? ¡Compártelo! Bitacoras.com TwitThis Facebook Meneame Google Bookmarks del.icio.us Live Technorati Ping.fm Wikio Turn this article into a PDF! E-mail this story to a friend! Print this article!

Mensaje de bienvenida a nuestros comentaristas recientes

Imaginemos que estamos creando un tema de WordPress, y esperamos que se trate de un espacio con una comunidad activa y bastante comentadora, a la que nos interesa dar algunos detalles, como un mensaje de bienvenida una vez que hayan comentado en nuestro blog.

Hoy vamos a ver un ingenioso y fácil código que nos permitirá tal cosa, y que, independientemente de la parte en PHP, deberemos por supuesto estilizar adecuadamente, con una buena tipografía, background, icono… lo que vuestra imaginación considere más apropiado.

Empecemos con el PHP.

WordPress, por defecto, almacena cierta información de los usuarios que comentan en nuestro blog, o, más específicamente, envía a nuestro ordenador pequeñas informaciones para reconocer a los usuarios habituales. Este tipo de información se llama en jerga informática “cookie“.

Las cookies de WordPress son las que usaremos para detectar al usuario habitual, que las recibirá en caso de que haga un comentario a través de su navegador, en un invisible proceso ‘de trasfondo’.

Seleccionaremos entonces el lugar donde queremos que este mensaje aparezca, por ejemplo, en el index.php, archivo que todos los temas de WordPress tienen y que normalmente actúa como la “home” de nuestro blog. Habrá que orientarse entre cada “div” del HTML allí presente, y, por ejemplo, antes del loop que traerá de la base de datos los últimos posts, pondremos lo siguiente :

<?php if(isset($_COOKIE['comment_author_'.COOKIEHASH])) {
$lastCommenter = $_COOKIE['comment_author_'.COOKIEHASH];

echo "¡Bienvenido de Nuevo ". $lastCommenter ."!";

} else {

echo "¡Bienvenido a nuestra Web!";
} ?>

A los usuarios habituales que hayan comentado, les aparecerá el mensaje “¡Bienvenido de Nuevo [nombre del usuario]!”. El nombre del usuario será el mismo dejado en su último comentario.

Para estilizar el mensaje de bienvenida, podríamos añadir un poco de HTML a ese código :

<div id="bienvenida">
<?php if(isset($_COOKIE['comment_author_'.COOKIEHASH])) {
$lastCommenter = $_COOKIE['comment_author_'.COOKIEHASH];

echo "<h3>¡Bienvenido de Nuevo ". $lastCommenter ."!</h3>";

} else {

echo "<h3>¡Bienvenido a nuestra Web!</h3>";
} ?>
</div>

Hemos añadido una “div”, con la “id” ‘bienvenida’, y un encabezado h3 para los mensajes.

Podríamos ahora añadir al archivo style.css de nuestro tema el siguiente CSS :

#bienvenida h4{
	background:#eee;
	color:#999;
	font-style:italic;
	border:#ddd;
	padding:10px
	}

Por supuesto, aquí podréis usar vuestros colores preferidos.

Mostrar el número total de comentarios en nuestro Blog

He aquí un snippet que nos permitirá, pasteado en nuestro template (por ejemplo, al final de sidebar.php), mostrar el número total de comentarios realizados en nuestro blog :

<?php
$count_posts = wp_count_posts();
$posts = $count_posts->publish;

$count_comments = get_comment_count();
$comments = $count_comments['approved'];

echo "Hay actualmente ".$comments." comentarios en mi blog, y una media de ".round($comments/$posts)." comentarios por post.";
?>

Lo podemos insertar en sidebar.php :

<div id="sidebar">
<div id="categorías">
//algun código aquí, dependerá de vuestro tema
</div>
<div id="articulos-recientes">
//idem
</div>
<div id="numero-comments">
<?php
$count_posts = wp_count_posts();
$posts = $count_posts->publish;

$count_comments = get_comment_count();
$comments = $count_comments['approved'];

echo "Hay actualmente ".$comments." comentarios en mi blog, y una media de ".round($comments/$posts)." comentarios por post.";
?>
</div>
</div>

En este ejemplo, podríamos estilizar el output con la id “numero-comments”.

Destacar el comentario de el autor de una entrada

Seguramente habéis visto en más de un blog -e incluso, aunque no tiene que ver, foros- que el comentario del autor o autora de la respectiva entrada, si es que deja uno, se destaca con un color distinto, más oscuro que los demás.

Esto se hace fácilmente conociendo un poquitín de CSS y editando archivos de WordPress.

Primero, debéis crear un valor (o estilo) CSS en style.css, la hoja de estilos de vuestro theme, agregando estas líneas dónde sea que no interfiera con otros valores (lo llamo “authcomment”):

.authcomment {
background-color: #B3FFCC !important;
}

Como podréis ver, indica un color en su valor hexadecimal, en este caso, #B3FFCC, que es un verde claro. Se puede cambiar este color, modificando esos dígitos. Podéis consultar la lista de colores aquí.

Luego, debéis modificar una línea en comments.php que reza así

<li class="”<?php">” id=”comment[…]</li>

e ingresar lo siguiente:

<li class="”<?php">user_id)
$oddcomment = “authcomment”;
echo $oddcomment;
?>” id=”comment[…]</li>

Y ¡listo! ya lo tienes

Acaba con los comentarios en mayúsculas

Uno de los modales en internet es “no escribir un texto completamente en mayúscula” pues significa que lo estas “GRITANDO”. Desafortunadamente muchos comentaristas (especialmente los jóvenes) tienen malogrado la tecla CAPS LOCK, o simplemente basados en su “libertad” tienen la idea que pueden escribir como quieran.

Si tienes visitas de este tipo de usuarios (HOYGAN) tienes dos opciones, marcar sus comentarios como SPAM o instalar el plugin Mata Mayúsculas.

Lo que hace este plugín, previa configuración, es modificar el comentario convirtiendo lo escrito con mayúsculas en minúsculas, y muestra un mensaje que educa al comentarista:

NOTA DEL ADMINISTRADOR: Tu comentario ha sido transformado a minusculas. Desactiva el Bloqueo de Mayusculas cuando escribas en esta bitacora, por favor.

Este mensaje se puede editar en el archivo del plugin, exactamente en la línea 13.

Ejemplo del funcionamiento del plugin (Antes y Después)

Dentro de las limitaciones de este plugin, es no poder convertir los caracteres especiales, como la Ñ o vocales acentuadas ( ¿qué HOYGAN acentúa las vocales?). A pesar de estos defectos es una buena opción, si conoces de otra alternativa dala a conocer en los comentarios, o regístrate en TodoWordpress y haz una reseña sobre ella.

Descargar Mata Mayúsculas