En realidad el título de esta entrada es incompleto, pues debería ser más algo como «Paginación de comentarios sin plugin y si no lo soporta ya tu tema«, que es de lo que se trata.
Y es que si tu tema no soporta la paginación de comentarios, introducida en WordPress 2.7 con la función paginate_comments_links()
, no hace falta añadir plugin – que los hay – para disponer de esta funcionalidad nativa.
Solo necesitas un par de códigos. El primero irá en el archivo functions.php
de tu tema, este:
function paginacion_comentarios() { $pages = ''; $max = get_comment_pages_count(); $page = get_query_var('cpage'); if (!$page) $page = 1; $a['current'] = $page; $a['echo'] = false; $total = 0; //1 - muestra el texto "Página N de N", 0 - no muestra $a['mid_size'] = 3; //cuantos enlaces se mostrarán a izquierda y derecha del actual $a['end_size'] = 1; //cuantos enlaces se mostrarán al principio y al fin $a['prev_text'] = '« Anterior'; //texto para el enlace de "página anterior" $a['next_text'] = 'Siguiente »'; //texto para el enlace de "página siguiente" if ($max > 1) echo '<div class="commentNavigation">'; if ($total == 1 && $max > 1) $pages = '<span class="pages">Página ' . $page . ' de ' . $max . '</span>'."\r\n"; echo $pages . paginate_comments_links($a); if ($max > 1) echo '</div>'; }
Luego solo hay que añadir este otro código en el «loop» de los comentarios, cerca (arriba o debajo, a tu gusto) de la función wp_list_comments()
, normalmente en el fichero comments.php
para que se active la paginación de comentarios.
<?php if(function_exists('paginacion_comentarios')) paginacion_comentarios(); ?>
Y ya lo tienes, solo revisa que está activa en los ajustes de comentarios de WordPress …
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
No me ha funcionado, me muestra el texto de paginación por cada comentario pero sigue mostrando siempre todos los comentarios. En comments.php no tengo la función wp_list_comments. Será porque uso un tema demasiado antiguo, pero la verdad que no quiero cambiarlo. Qué lástima 🙁
Frenando y esto no afecta el seo con lo del contenido duplicado? Gracias
se ha debatido mucho, de hecho en algún post por aquí está explicado 😉
Muy interesante esta información Fernando! Lo tendré en cuenta cuando migre mi web de Joomla a Wordpress. Saludos!
Hola, me podrías decir en que parte de funtions.php se coloca el primer código?
y en qiue parte de comments.php se coloca el segundo código?
Gracias.