paginate_links
Позволяет изменить URL каждой ссылки пагинации, созданной функцией paginate_links().
Фильтр применяется отдельно к ссылкам предыдущей, следующей и пронумерованных страниц. Текущая страница и многоточия ссылок не содержат, поэтому через этот фильтр не проходят.
После применения фильтра WordPress очищает URL функцией esc_url().
Чтобы изменить готовую HTML-разметку всей пагинации, используйте фильтр paginate_links_output.
Использование
add_filter( 'paginate_links', 'wp_kama_paginate_links_filter' );
/**
* Function for `paginate_links` filter-hook.
*
* @param string $link The paginated link URL.
*
* @return string
*/
function wp_kama_paginate_links_filter( $link ){
// filter...
return $link;
}
- $link(строка)
- URL отдельной страницы пагинации.
Примеры
#1 Добавим GET-параметр ко всем ссылкам пагинации
add_filter( 'paginate_links', 'wp_kama_add_layout_to_paginate_links' );
function wp_kama_add_layout_to_paginate_links( $link ) {
return add_query_arg( 'layout', 'grid', $link );
}Список изменений
| С версии 3.0.0 | Введена. |
Где вызывается хук
paginate_links
wp-includes/general-template.php 5013
esc_url( apply_filters( 'paginate_links', $link ) ),
wp-includes/general-template.php 5039
esc_url( apply_filters( 'paginate_links', $link ) ),
wp-includes/general-template.php 5063
esc_url( apply_filters( 'paginate_links', $link ) ),