Paginação de comentários no WordPress

  • Autor Autor Chitauri
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
C

Chitauri

Hola, quería paginar los comentarios de wordpress, y leí este post, pero tengo dos dudas.

Solo necesito un par de códigos. El primero irá en el archivo functions.php de tu tema, este:

Inserir CODE, HTML ou PHP:
function wp_comments_paginados() {
   $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>';
}

¿Exactamente donde tengo que colocar este código dentro de funtions.php?

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.

Inserir CODE, HTML ou PHP:
<?php if(function_exists('wp_comments_paginados')) wp_comments_paginados(); ?>

¿Y este código en que lugar de comments.php lo tengo que colocar?


---------- Post agregado el 28-sep-2013 hora: 02:00 ----------

Ya lo conseguí.

El código que tenía que sustituir era este:

Inserir CODE, HTML ou PHP:
<?php
		if ( get_comment_pages_count( ) > 1 && get_option( 'page_comments' ) ){ // Are there comments to navigate through?
?>
		<div id="nav-below-comments" class="clearfix">
			<span class="nav-previous">
<?php
			previous_comments_link(  '<span class="meta-nav">&larr;</span> '. esc_html__( 'Older Comments', 'Raindrops' ) );
?>
			</span>
    		<span class="nav-next">
<?php
			next_comments_link( esc_html__( 'Newer Comments ', 'Raindrops' ). '<span class="meta-nav">&rarr;</span>' );
?>
			</span>
		</div>
<?php
       } // check for comment navigation
?>

Lo reemplazé por este:

Inserir CODE, HTML ou PHP:
<div class="pagination">
    <?php paginate_comments_links(); ?>
</div>

Ahora ya puedo paginar comentarios sin plugin
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
Hola, quería paginar los comentarios de wordpress, y leí este post, pero tengo dos dudas.

Solo necesito un par de códigos. El primero irá en el archivo functions.php de tu tema, este:

Inserir CODE, HTML ou PHP:
function wp_comments_paginados() {
   $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>';
}

¿Exactamente donde tengo que colocar este código dentro de funtions.php?

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.

Inserir CODE, HTML ou PHP:
<?php if(function_exists('wp_comments_paginados')) wp_comments_paginados(); ?>

¿Y este código en que lugar de comments.php lo tengo que colocar?


---------- Post agregado el 28-sep-2013 hora: 02:00 ----------

Ya lo conseguí.

El código que tenía que sustituir era este:

Inserir CODE, HTML ou PHP:
<?php
        if ( get_comment_pages_count( ) > 1 && get_option( 'page_comments' ) ){ // Are there comments to navigate through?
?>
        <div id="nav-below-comments" class="clearfix">
            <span class="nav-previous">
<?php
            previous_comments_link(  '<span class="meta-nav">&larr;</span> '. esc_html__( 'Older Comments', 'Raindrops' ) );
?>
            </span>
            <span class="nav-next">
<?php
            next_comments_link( esc_html__( 'Newer Comments ', 'Raindrops' ). '<span class="meta-nav">&rarr;</span>' );
?>
            </span>
        </div>
<?php
       } // check for comment navigation
?>

Lo reemplazé por este:

Inserir CODE, HTML ou PHP:
<div class="pagination">
    <?php paginate_comments_links(); ?>
</div>

Ahora ya puedo paginar comentarios sin plugin
Excelente trabajo en agregar la paginación de comentarios sin necesidad de un plugin. Para responder a tus preguntas sobre dónde colocar el código en functions.php y en comments.php:

1. El código que proporcionaste para functions.php debe colocarse dentro de la sección de funciones del archivo. Por lo general, se sugiere agregar código personalizado al final del archivo functions.php de tu tema para evitar conflictos con otras funciones. Puedes ubicarlo antes de la etiqueta de cierre `?>` al final del archivo.

2. Respecto al segundo código que mencionas para comments.php, debes colocarlo dentro del archivo comments.php antes o después de la función `wp_list_comments()`, como indicaste. Puedes elegir la ubicación que mejor se adapte a la estructura de tu tema, asegurándote de insertarlo dentro del loop de comentarios.

Si ya lo conseguiste y has logrado implementar la paginación de comentarios con éxito, ¡felicidades! Si tienes más consultas o requieres ayuda adicional, no dudes en preguntar. ¡Buen trabajo!
 
Voltar
Topo