Для того чтобы добавить ссылку на первую страницу в пагинации, вы можете использовать фильтр `paginate_links`, который позволяет изменять HTML код, генерируемый функцией `paginate_links()`. Однако, если вы хотите добавить ссылку на первую страницу так, чтобы она отображалась в виде `/page/1/`, вам потребуется немного больше кода.
Ниже представлен пример кода, который можно добавить в файл `functions.php` вашей темы WordPress для добавления ссылки на первую страницу с использованием фильтра `paginate_links`:
```php
function custom_paginate_links($link_output, $link) {
if ($link['type'] === 'first') {
// Измените структуру URL, если необходимо
// В данном случае мы просто добавляем '/page/1/'
$first_page_url = rtrim(get_pagenum_link(1), '/') . '/page/1/';
$link_output = '<a class="first-page" href="' . esc_url($first_page_url) . '">« Первая</a>';
}
return $link_output;
}
add_filter('paginate_links_output', 'custom_paginate_links', 10, 2);
function add_first_page_link($args) {
if (is_singular() || $args['total'] <= 1 || $args['current'] == 1) {
return $args;
}
$args['add_args'] = is_array($args['add_args']) ? $args['add_args'] : [];
$args['add_args']['first'] = true;
$args['add_args'] = wp_parse_args([
'format' => '',
'total' => $args['total'],
'current' => $args['current']
], $args['add_args']);
return $args;
}
add_filter('paginate_links_args', 'add_first_page_link');
```
Этот код добавляет ссылку на первую страницу пагинации, с условием, что текущая страница не является первой. Вам нужно будет произвести дополнительные настройки в соответствии с вашими предпочтениями и структурой URL вашего сайта.
Обратите внимание, что если на вашем сайте используется постоянная ссылка по умолчанию для первой страницы блога (например, http://example.com/ вместо http://example.com/page/1/), вы можете удалить часть кода, которая добавляет '/page/1/' к URL, и просто использовать `get_pagenum_link(1)` для получения URL первой страницы.
Не забудьте очистить кэш, если вы используете кэширующие плагины, и убедитесь, что ваша тема корректно применяет фильтры `paginate_links_output` и `paginate_links_args`. Вы также можете настроить CSS классы и стили для новой ссылки в соответствии с вашим дизайном.