No funciona ninguna paginación :(

Estado
No está abierto para más respuestas.
Mensajes
399
Puntuación de reacción
2
Hola,

Hace unos días creé mi blog Noticias Pokémon | Novedades de Pokémon X e Y, y noticias en general, pero estoy viendo que las noticias se acumulan en una misma página y no hay "siguiente" para pasar.
He intentado incluir paginación de plugins, de códigos que he encontrado en internet y nada. ¿Será que la plantilla no acepta paginación?

Si alguien sabe alguna solución, que me la diga porfa...
Gracias.
 

lobogris

Platino
Usuario de Bronce
Mensajes
1,537
Puntuación de reacción
0
Ve a tu archivo functions.php y añade lo siguiente

PHP:
function oece_paging_nav() {

    if( is_singular() )
        return;

    global $wp_query;

    if( $wp_query->max_num_pages <= 1 )
        return;

    $paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
    $max   = intval( $wp_query->max_num_pages );

    if ( $paged >= 1 )
        $links[] = $paged;

    if ( $paged >= 3 ) {
        $links[] = $paged - 1;
        $links[] = $paged - 2;
    }

    if ( ( $paged + 2 ) <= $max ) {
        $links[] = $paged + 2;
        $links[] = $paged + 1;
    }

    echo '<div class="paginacion"><ul class="pagination">' . "\n";

    if ( get_previous_posts_link() )
        printf( '<li>%s</li>' . "\n", get_previous_posts_link() );

    if ( ! in_array( 1, $links ) ) {
        $class = 1 == $paged ? ' class="pagina-activa"' : '';

        printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( 1 ) ), '1' );

        if ( ! in_array( 2, $links ) )
            echo '<li>…</li>';
    }

    sort( $links );
    foreach ( (array) $links as $link ) {
        $class = $paged == $link ? ' class="pagina-activa"' : '';
        printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $link ) ), $link );
    }

    if ( ! in_array( $max, $links ) ) {
        if ( ! in_array( $max - 1, $links ) )
            echo '<li>…</li>' . "\n";

        $class = $paged == $max ? ' class="pagina-activa"' : '';
        printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $max ) ), $max );
    }

    if ( get_next_posts_link() )
        printf( '<li>%s</li>' . "\n", get_next_posts_link() );

    echo '</div></ul>' . "\n";

}

Después en el index.php quita esto:

PHP:
<?php if(function_exists('wp_pagenavi')) { // if PageNavi is activated ?>
				<div class="more_posts">
					<?php wp_pagenavi(); ?>
				</div>
			<?php } else { // Otherwise, use traditional Navigation ?>
				<div class="more_posts">
					<span class="post_links"><?php next_posts_link(__('« Older Entries', 'themezee_lang')) ?>   <?php previous_posts_link (__('Recent Entries »', 'themezee_lang')) ?></span>
				</div>
			<?php }?>

Y añade en su lugar esto

PHP:
<?php oece_paging_nav(); ?>

Yo es el código que utilizo en mis themes, ya me dices que tal te fue
 
Mensajes
399
Puntuación de reacción
2
Ve a tu archivo functions.php y añade lo siguiente

PHP:
function oece_paging_nav() {

    if( is_singular() )
        return;

    global $wp_query;

    if( $wp_query->max_num_pages <= 1 )
        return;

    $paged = get_query_var( 'paged' ) ? absint( get_query_var( 'paged' ) ) : 1;
    $max   = intval( $wp_query->max_num_pages );

    if ( $paged >= 1 )
        $links[] = $paged;

    if ( $paged >= 3 ) {
        $links[] = $paged - 1;
        $links[] = $paged - 2;
    }

    if ( ( $paged + 2 ) <= $max ) {
        $links[] = $paged + 2;
        $links[] = $paged + 1;
    }

    echo '<div class="paginacion"><ul class="pagination">' . "\n";

    if ( get_previous_posts_link() )
        printf( '<li>%s</li>' . "\n", get_previous_posts_link() );

    if ( ! in_array( 1, $links ) ) {
        $class = 1 == $paged ? ' class="pagina-activa"' : '';

        printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( 1 ) ), '1' );

        if ( ! in_array( 2, $links ) )
            echo '<li>…</li>';
    }

    sort( $links );
    foreach ( (array) $links as $link ) {
        $class = $paged == $link ? ' class="pagina-activa"' : '';
        printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $link ) ), $link );
    }

    if ( ! in_array( $max, $links ) ) {
        if ( ! in_array( $max - 1, $links ) )
            echo '<li>…</li>' . "\n";

        $class = $paged == $max ? ' class="pagina-activa"' : '';
        printf( '<li%s><a href="%s">%s</a></li>' . "\n", $class, esc_url( get_pagenum_link( $max ) ), $max );
    }

    if ( get_next_posts_link() )
        printf( '<li>%s</li>' . "\n", get_next_posts_link() );

    echo '</div></ul>' . "\n";

}

Después en el index.php quita esto:

PHP:
<?php if(function_exists('wp_pagenavi')) { // if PageNavi is activated ?>
				<div class="more_posts">
					<?php wp_pagenavi(); ?>
				</div>
			<?php } else { // Otherwise, use traditional Navigation ?>
				<div class="more_posts">
					<span class="post_links"><?php next_posts_link(__('« Older Entries', 'themezee_lang')) ?> * <?php previous_posts_link (__('Recent Entries »', 'themezee_lang')) ?></span>
				</div>
			<?php }?>

Y añade en su lugar esto

PHP:
<?php oece_paging_nav(); ?>

Yo es el código que utilizo en mis themes, ya me dices que tal te fue

Nada, no sirve :(
 

lobogris

Platino
Usuario de Bronce
Mensajes
1,537
Puntuación de reacción
0
Pues entonces no sé... en tu código comprueba si está activado wp_pagenavi (plugin)y sino muestra la paginación típica de entradas más nuevas y antigüas.

Prueba lo siguiente, instala este plugin WordPress › WP-PageNavi « WordPress Plugins o sino ve a tu index.php y cambia esto

PHP:
 <?php if(function_exists('wp_pagenavi')) { // if PageNavi is activated ?>
                <div class="more_posts">
                    <?php wp_pagenavi(); ?>
                </div>
            <?php } else { // Otherwise, use traditional Navigation ?>
                <div class="more_posts">
                    <span class="post_links"><?php next_posts_link(__('« Older Entries', 'themezee_lang')) ?> * <?php previous_posts_link (__('Recent Entries »', 'themezee_lang')) ?></span>
                </div>
            <?php }?>

Por esto

PHP:
                <div class="more_posts">
                    <span class="post_links"><?php next_posts_link(__('« Older Entries', 'themezee_lang')) ?> * <?php previous_posts_link (__('Recent Entries »', 'themezee_lang')) ?></span>
                </div>

Creo que debería funcionar, suerte
 
Mensajes
399
Puntuación de reacción
2
Pues entonces no sé... en tu código comprueba si está activado wp_pagenavi (plugin)y sino muestra la paginación típica de entradas más nuevas y antigüas.

Prueba lo siguiente, instala este plugin WordPress › WP-PageNavi « WordPress Plugins o sino ve a tu index.php y cambia esto

PHP:
 <?php if(function_exists('wp_pagenavi')) { // if PageNavi is activated ?>
                <div class="more_posts">
                    <?php wp_pagenavi(); ?>
                </div>
            <?php } else { // Otherwise, use traditional Navigation ?>
                <div class="more_posts">
                    <span class="post_links"><?php next_posts_link(__('« Older Entries', 'themezee_lang')) ?> * <?php previous_posts_link (__('Recent Entries »', 'themezee_lang')) ?></span>
                </div>
            <?php }?>

Por esto

PHP:
                <div class="more_posts">
                    <span class="post_links"><?php next_posts_link(__('« Older Entries', 'themezee_lang')) ?> * <?php previous_posts_link (__('Recent Entries »', 'themezee_lang')) ?></span>
                </div>

Creo que debería funcionar, suerte

Pfff, jou, y que no sale nada... Me parece que será cosa de la plantilla, porque no sale ni "Entradas antiguas" ni nada por el estilo
 

lobogris

Platino
Usuario de Bronce
Mensajes
1,537
Puntuación de reacción
0
Pfff, jou, y que no sale nada... Me parece que será cosa de la plantilla, porque no sale ni "Entradas antiguas" ni nada por el estilo

Pues ya lo siento xD

Algo de la platilla es seguro, porque el código que te dí al principio debería al menios mostrarte la el li de la página 1.

Yo que tu se lo comentaba al creador a ver que te dice, yo si lo mirara es probable que encontrara la causa, pero estoy falto de tiempo que el miércoles tengo que entrgar un diseño y estoy sacando horas de debajo de las piedras xD
 
Mensajes
399
Puntuación de reacción
2
Pues ya lo siento xD

Algo de la platilla es seguro, porque el código que te dí al principio debería al menios mostrarte la el li de la página 1.

Yo que tu se lo comentaba al creador a ver que te dice, yo si lo mirara es probable que encontrara la causa, pero estoy falto de tiempo que el miércoles tengo que entrgar un diseño y estoy sacando horas de debajo de las piedras xD

¿Y para el miércoles-jueves podrías solucionarmelo?
 
Estado
No está abierto para más respuestas.
Arriba