Resaltar comentarios del admin o autor en WordPress

Esto sin duda es uno de los trucos más buscados para WordPress, porque mejora el aspecto visual de los comentarios enormemente y permite que los lectores identifiquen cuando el blogger o administrador del sitio responde a sus opiniones.

commentskernel

Comentarios Personalizados de Kernel Web

Si usas un theme diseñado para WordPress 2.7 esto es sumamente fácil, puesto que todo se hace con CSS usando algunas clases, tomaré de referencia las de este blog para mostrarlo de forma práctica:

ol.commentlist li.bypostauthor {  background: #D4EDFE; border: 3px solid #FFF;  }

Esto es si tenemos sólo un autor activo en nuestro blog, en caso de tener 2, 3 o más podemos recurrir a usar el siguiente tipo de estilo:

ol.commentlist li.comment-author-esteban-rojas { background:#333; border: 2px ridge #ff8800; }
ol.commentlist li.comment-author-tu-nombre-de-usuario { background: #333; border: 1px solid black; }

Esto para que cada autor tenga su propio estilo CSS a la hora que comente, el nombre de usuario vendría a ser el nombre que usamos para loguearnos en nuestro blog , si aún conservas el que  por defecto te asigna WordPress al instalarlo en tu server, el cual es admin, basta con asignar lo siguiente a tu hoja de estilos:

ol.commentlist li.comment-author-admin { Acá irian tus estilos }

Si en cambio usas una plantilla antigua, y por ende sin comentarios adaptados a WordPress 2.7, la forma de conseguir que tus comentarios resalten de entre los de tus lectores es la siguiente:

Abrimos nuestro comments.php y localizamos el siguiente código:

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

Y debajo añadimos lo siguiente:

<?php
   $isByAdmin = false;
   if($comment->comment_author_email == "tucorreo@demo.com"){
   $isByAdmin = true;
   };
?>

Esto no es más que una función condicional enfocada a verificar si el correo del comentarista es igual al correo del admin "tucorreo@demo.com" , por lo que tendrán que cambiar este último por el suyo y debajo añadir lo siguiente :

<li class="<?php if ($isByAdmin) echo 'admin-comment'; else echo $oddcomment; ?>" id="comment-<?php comment_ID() ?>">

Que indica que si el correo coincide con el que pusieron se formatee ese comentario con la clase que establezcan, en este caso: admin-comment. Luego de esto bastara con ir al archivo style.css de nuestro theme y establecer los estilos CSS para la clase, generalmente tienen esta forma:

.commentlist li.admin-comment { background: #D4EDFE; border: 3px solid #FFF; }

Si su bitácora tiene 2 o más administradores bastará con añadir una sentencia elseif o las que sean necesarias, puesto que estas se ejecutan en orden al devolver un valor cierto o falso, para 2 admins o autores quedaria así:

<?php
        $isByAuthor = false;
        $isByAdmin = false;
        if($comment->comment_author_email == "correoadmin1@demo.com"){
            $isByAdmin = true;
        } elseif($comment->comment_author_email == "correoadmin2@demo.com"){
            $isByAuthor = true;
        };
        ?>

Se añadiria la clase: author-comment al CSS y abajo del código anterior se colocaria:

<li class="<?php if ($isByAdmin) echo 'admin-comment'; elseif ($isByAuthor) echo 'author-comment';
else echo $oddcomment; ?>" id="comment-<?php comment_ID() ?>">

También te puede interesar:

Escrito por Esteban Rojas

Blogger radicado en México, fundador de Kernel Web, autodidacta, fanático de WordPress, por el momento estudiando el bachillerato, luego ya veremos.

Compartelo

  • Tweetea esto
  • Guarda esto en tu Delicious
  • Mandalo a StumbleUpon
  • Suscribete al Feed

5 grandiosos comentarios. Gracias por su opinión.

  1. no existe algun tipo de plugin que muestre que editor o admin ha hecho x entrada? me gustaria implementarla a mi blog, un ejemplo de que autor es este:
    This post was written by:: http://bit.ly/tt1XX

    gracias :)

  2. Muchas gracias de nuevo, sigue asi amigo :)

  3. hola como estasn

  4. Muchas gracias por el código, lo estaba buscando.

    Saludos.

Anda no seas tímido, añade tu opinión