- Personalizar el sidebar: Mostrar últimos tweets
- Personalizar el sidebar: Mostrar posts al azar y modificados
- Personalizar el sidebar: Mostrar comentarios recientes
- Personalizar el sidebar: Mostrar posts recientes
- Personalizar el sidebar: Mostrar posts populares
Uno de los elementos más destacados de una página web es el sidebar con el se puede realizar múltiples personalizaciones. Comenzaré mostrando los comentarios recientes.
Hay 3 posibilidades para realizarlo, iré de lo más a lo más difícil
Widget
Si el sidebar admite widgets, simplemente arrastra el widget de comentarios recientes (recent comments) en la personalización de widgets en el área de administración. Una vez arrastrado, se le da un título, el número de comentarios que quieres que muestre y listo.
Como mostrar comentarios recientes en el sidebar (Widget)
Plugin
Siempre puedes optar por encontrar un plugin ya sea gratis o de pago que se encargue de dicha función. Siempre son customizbles desde la administración, por tanto, no tendrías problemas para gestionarlo.
Función
Los comentarios están en la base de datos así que, podemos obtener los datos por nuestra cuenta.
Comenzamos creando una función en el archivo functions.php llamada comentarios_recientes. Esta función devolverá todos los comentarios aprobados recientemente aprobados. Una vez obtenidos se recorren los resultados obtenidos uno por uno y se van mostrando. El código original podréis encontrarlo en WPLancer.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
function comentarios_recientes($num_comentarios = 10, $long_comentario = 35) { global $wpdb; //Se crea la consulta en la base de datos //Devolverá los comentarios aprobados,publicados y que no tengan una contraseña //Son mostrados por orden cronológico y se mostrarán hasta 10 comentarios $consulta = "SELECT * FROM $wpdb->comments"; $consulta .= " JOIN $wpdb->posts ON ID = comment_post_ID"; $consulta .= " WHERE comment_approved = '1' AND post_status = 'publish' AND post_password =''"; $consulta .= " ORDER BY comment_date DESC LIMIT $num_comentarios"; $comentarios = $wpdb->get_results($consulta); //Si ha devuelto comentarios se recorren if ($comentarios){ foreach ($comentarios as $comentario){ ?> <li> <!--Se muestra el enlace del comentario con el nombre del autor (se comprueba si tiene) y el comentario que solo se mostrará hasta 35 caracteres--> <a href="<?php echo get_permalink($comentario->comment_post_ID).'#comment-'.$comentario->comment_ID;?>"> <?php echo get_author($comentario); ?>: </a> //Se muestra el texto del comentario hasta 35 caraceteres <?php echo strip_tags(substr(apply_filters('get_comment_text', $comentario->comment_content), 0, $long_comentario)); ?> </li> <?php } } else { echo '<li>No hay comentarios.</li>'; } } //Esta función comprueba si el campo comment_author esta vacío, si lo está el autor es anónimo function get_author($comentario){ $author = ""; if (empty($comentario->comment_author)) $author = 'Anónimo'; else $author = $comentario->comment_author; return $author; } |
Y ahora sólo que tenéis que llamarlo donde queráis de la siguiente forma
1 |
<?php comentarios_recientes (20, 50); ?> //Se piden 20 comentarios y se muestra hasta 50 caraceteres |
y hasta aquí el tutorial de hoy, espero que os haya gustado. A seguir picando 🙂