WP-PageNavi
¿Quieres reemplazar los viejos enlaces ← Entradas anteriores | Entradas siguientes → con enlaces a las páginas?
Este plugin dispone de la etiqueta de plantilla wp_pagenavi ()
que genera enlaces de paginación amigables.
Uso
En tu tema tienes que encontrar las llamadas a next_posts_link() y previous_posts_link() y reemplazarlas.
En el tema TwentyTen se ve así:
<div class="nav-previous"><?php next_posts_link( __( '<span class="meta-nav">←</span> Older posts', 'twentyten' ) ); ?></div>
<div class="nav-next"><?php previous_posts_link( __( 'Newer posts <span class="meta-nav">→</span>', 'twentyten' ) ); ?></div>
Deberías reemplazar esas dos líneas con esto:
<?php wp_pagenavi(); ?>
En páginas con varias partes deberías ver el código así:
<?php wp_link_pages( ... ); ?>
y reemplazarlo con esto:
<?php wp_pagenavi( array( 'type' => 'multipart' ) ); ?>
Ve a WP-Admin -> Ajustes -> PageNavi para configurarlo.
Cambiando el CSS
Si necesitas configurar los estilos CSS de WP-PageNavi puedes copiar el archivo pagenavi-css.css
del directorio del plugin al directorio de tu tema y hacer ahí tus modificaciones. De este modo no perderás los cambios cuando actualices el plugin.
Si lo prefieres, puedes desmarcar la opción «¿Usar pagenavi.css?» de la página de ajustes y añadir los estilos al archivo style.css de tu tema directamente.
Cambiando los nombres de las clases
Hay filtros que se pueden utilizar para cambiar los nombres por defecto de las clases asignadas a los elementos de navegación de página.
Filtros
wp_pagenavi_class_pages
wp_pagenavi_class_first
wp_pagenavi_class_previouspostslink
wp_pagenavi_class_extend
wp_pagenavi_class_smaller
wp_pagenavi_class_page
wp_pagenavi_class_current
wp_pagenavi_class_larger
wp_pagenavi_class_nextpostslink
wp_pagenavi_class_last
Uso de filtros
// Simple Usage - 1 callback per filter
add_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_previouspostslink_class');
add_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_nextpostslink_class');
add_filter('wp_pagenavi_class_page', 'theme_pagination_page_class');
function theme_pagination_previouspostslink_class($class_name) {
return 'pagination__control-link pagination__control-link--previous';
}
function theme_pagination_nextpostslink_class($class_name) {
return 'pagination__control-link pagination__control-link--next';
}
function theme_pagination_page_class($class_name) {
return 'pagination__current-page';
}
// More Concise Usage - 1 callback for all filters
add_filter('wp_pagenavi_class_previouspostslink', 'theme_pagination_class');
add_filter('wp_pagenavi_class_nextpostslink', 'theme_pagination_class');
add_filter('wp_pagenavi_class_page', 'theme_pagination_class');
function theme_pagination_class($class_name) {
switch($class_name) {
case 'previouspostslink':
$class_name = 'pagination__control-link pagination__control-link--previous';
break;
case 'nextpostslink':
$class_name = 'pagination__control-link pagination__control-link--next';
break;
case 'page':
$class_name = 'pagination__current'
break;
}
return $class_name;
}
Desarrollo
Agradecimientos
- Icono del plugin por SimpleIcon de Flaticon
Donaciones
He pasado la mayoría de mi tiempo creando, actualizando, manteniendo y dando soporte a estos plugins. Si de verdad te gustan mis plugins y puedes pasarme un par de dólares lo apreciaré de verdad. Si no siéntente libre de usarlo sin obligación alguna.