search
top

Listando los últimos comentarios y personalizando el texto

Comentarios! - de palomitas y maíz
(imagen del genio de Palomitas y Maíz)

Listar los comentarios recientes es bastante molesto a veces, ya que no existe documentación precisa en el codex y todo es bastante “Extra oficial”.

Hoy mirando un poco el código de wp para personalizar un poco más los comentarios, me di cuenta que lo mejor para hacer esto es haciéndolo con los famosos widgets.

Personalizando:

Yo quería cambiar el “on” por “en”, por ejemplo de “Marcelo on php the_time – La hora y fecha en WordPress” quería que quede “Marcelo en php the_time – La hora y fecha en WordPress”.

No costó mucho hacerlo, solo cambiar “%1$s on %2$s” en la línea 647 del archivo default-widgets.php en /includes por “%1$s en %2$s”.

También le agregué Nofollow al id del comentario, (aunque matt joda que los enlaces internos no deben llevar nofollow).

Esto también en la línea 647, en la parte que dice:

1
'<a href="' . esc_url( get_comment_link($comment->comment_ID) ) . '">'

Cambié por:

1
'<a rel="nofollow" href="' . esc_url( get_comment_link($comment->comment_ID) ) . '">'

Para listar los comentarios recientes “a mano” sin widgets lo mejor que encontré es:

1
2
3
4
5
6
7
8
9
10
<?php
$number=5; // Número de comentarios recientes que queremos mostrar (cambiar el 5)
$comments = $wpdb->get_results("SELECT * FROM $wpdb->comments WHERE comment_approved = '1' ORDER BY comment_date_gmt DESC LIMIT $number");
?>
<ul id="recentcomments">
<h2>Comentarios recientes</h2>
<?php
if ( $comments ) : foreach ( (array) $comments as $comment) :
echo  '<li class="recentcomments">' . sprintf(__('%1$s en %2$s'), get_comment_author_link(), '<a href="'. get_comment_link($comment->comment_ID) . '">' . get_the_title($comment->comment_post_ID) . '</a>') . '</li>';
endforeach; endif;?></ul>

Ahí por defecto llama los últimos 5 comentarios y los imprime como “Marcelo en php the_time – La hora y fecha en WordPress” pero sin nofollow, quien quiera lo agrega, eso va en cada uno.

Articulos relacionados:

Dejar un comentario

top