Получение ссылки на предыдущие комментарии в WordPress
Функция get_previous_comments_link() позволяет получить ссылку на предыдущую страницу комментариев. Эта функция полезна, когда у вас много комментариев, и вы хотите предоставить пользователям возможность легко переходить между страницами.
Как это работает
Использует
get_comments_pagenum_link()
Применяется в
previous_comments_link()get_the_comments_navigation()
Производительность
- 1 раз — 0.00019 сек (быстро)
- 50000 раз — 2.7 сек (быстро)
Хуки функции
previous_comments_link_attributes
Возвращаемое значение
Строка или null. HTML-ссылка на предыдущую страницу комментариев.
Применение
get_previous_comments_link( $label, $page );
Параметры
$label(строка) — Текст ссылки. По умолчанию:''$page(целое число или null) — Номер страницы. По умолчанию:null
Примеры использования
Пример 1: Получение ссылки на предыдущую страницу комментариев текущего поста
Предположим, у поста 44 комментария, и мы находимся на второй странице комментариев. В этом случае можно использовать следующий код:
$prev_link = get_previous_comments_link();
/* $prev_link будет равен
← Предыдущие комментарии
*/
Добавьте свой собственный пример
Изменения
- С версии 2.7.1 — Функция была добавлена.
- С версии 6.7.0 — Добавлен параметр страницы.
Код функции
Функция get_previous_comments_link() располагается в файле wp-includes/link-template.php и выглядит следующим образом:
function get_previous_comments_link( $label = '', $page = null ) {
if ( ! is_singular() ) {
return;
}
if ( is_null( $page ) ) {
$page = get_query_var( 'cpage' );
}
if ( (int) $page <= 1 ) {
return;
}
$previous_page = (int) $page - 1;
if ( empty( $label ) ) {
$label = __( '« Старые комментарии' );
}
/**
* Фильтры для атрибутов тега ссылки на предыдущую страницу комментариев.
*
* @since 2.7.0
*
* @param string $attributes Атрибуты тега.
*/
$attr = apply_filters( 'previous_comments_link_attributes', '' );
return sprintf(
'%3$s',
esc_url( get_comments_pagenum_link( $previous_page ) ),
$attr,
preg_replace( '/&([^#])(?![a-z]{1,8};)/i', '&$1', $label )
);
}
Связанные функции
Пагинация комментариев
get_comment_pages_count()get_comments_pagenum_link()get_next_comments_link()get_page_of_comment()get_the_comments_navigation()next_comments_link()paginate_comments_links()previous_comments_link()the_comments_navigation()the_comments_pagination()
Ссылки в HTML (тег )
edit_term_link()get_next_posts_link()get_previous_posts_link()get_the_author_posts_link()next_image_link()previous_image_link()the_attachment_link()the_author_link()the_author_posts_link()the_shortlink()wp_register()
Комментарии
cancel_comment_reply_link()comment_author_email_link()comment_form()comment_form_title()comment_id_fields()comment_text()comment_type()comments_link()comments_popup_link()get_avatar()get_avatar_data()get_avatar_url()get_cancel_comment_reply_link()get_comment()get_comment_author_email()get_comment_reply_link()get_comment_text()get_comment_type()get_comments()get_comments_link()get_comments_number()get_edit_comment_link()get_the_comments_pagination()is_comment_feed()is_trackback()sanitize_comment_cookies()wp_allow_comment()wp_count_comments()wp_delete_comment()wp_get_current_commenter()wp_handle_comment_submission()wp_insert_comment()wp_list_comments()wp_new_comment()wp_notify_moderator()wp_notify_postauthor()wp_set_comment_cookies()wp_set_comment_status()wp_spam_comment()wp_transition_comment_status()wp_update_comment()wp_update_comment_count()
Теперь вы знаете, как использовать функцию get_previous_comments_link() для работы с комментариями в WordPress!