Разбиение комментариев на страницы paginate_comments_links()

Разбиение комментариев в wordpressУстановив новый шаблон (seoguru) себе на блог, мне пришлось ввести постраничный вывод комментариев. Так как для некоторых статей их уже более 1000. И унылая ссылка на предыдущие комментарии меня не устраивала.


Включается пагинация комментариев в админке -> Настройки > Обсуждение. Там же можно задать количество комментариев на страницу.

Функция

За вывод страниц комментариев отвечает функция paginate_comments_links()
Находится она в файле: /wp-includes/link-template.php

Рекомендуемые параметры
[php]<?php paginate_comments_links($args, array(
‘base’ => add_query_arg( ‘cpage’, ‘%#%’ ),
‘format’ => »,
‘show_all’ => false,
‘type’ => ‘plain’,
‘total’ => $max_page,
‘current’ => $page,
‘echo’ => true,
‘next_text’ => ‘Next’,
‘prev_text’ => ‘Previous’,
‘add_fragment’ => ‘#comments’ )); ?>
[/php] из них я использовал только ‘next_text’ => ‘Next’, ‘prev_text’ => ‘Previous’,

Использование по умолчанию
[php]<?php paginate_comments_links(); ?>[/php]

Оформление страниц навигации через CSS
[css] .page-numbers /* номера страниц */
.current /* текущая страница */
.next /* ссылка на следующую страницу */
.prev /* ссылка на предыдущую страницу */
[/css]

За вывод навигации страниц отвечает файл comments.php находится в папке шаблона.

Меняем шаблон

В моем случаи код в файле comments.php имел такой вид
[php] <div class="navigation">
<div class="alignleft"><?php previous_comments_link() ?></div>
<div class="alignright"><?php next_comments_link() ?></div>
</div>
[/php]

заменил его на
[php] <div class="navigation">
<div class="alignleft"></div>
<div class="alignright"><?php paginate_comments_links( array(‘prev_text’ => ‘« Ранее’, ‘next_text’ => ‘Далее »’) ); ?></div>
</div>
[/php]

Записал себе в виде заметки. Еще не раз придется вернуться к ней.

Add a Comment

Your email address will not be published. Required fields are marked *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.