Функция get_year_link() в WordPress: синтаксис, примеры использования, хуки

## Функция GET_YEAR_LINK() │ WP 1.5.0

Функция get_year_link() возвращает постоянную ссылку на архив за указанный год.

* Время выполнения — 0.000159 сек (быстро) | 50000 раз — 3.51 сек (быстро) | PHP 7.0.8, WP 4.6

### Хуки

- year_link — фильтр, который позволяет изменять результат функции.

### Возврат значения

Функция возвращает строку — постоянную ссылку на архив за указанный год.

### Использование

```php
get_year_link( $year );
  • $year (int|false) (обязательно) — год, для которого нужно получить ссылку. Используйте false для текущего года.

Примеры

Пример 1: Получение ссылки на архив года

echo get_year_link(false); // Выводит: http://example.com/2022 (для текущего года)
echo get_year_link(2014);  // Выводит: http://example.com/2014

Пример 2: Использование с переменными PHP

Этот код можно использовать внутри цикла WordPress (The Loop). Он присваивает текущий год переменной и выводит ссылку на архив в виде HTML-ссылки.


   archive

Пример 3: Отображение ссылки на архив текущего года

Посты за этот год

Заметки

  • Глобальная переменная: $wp_rewrite — компонент WordPress, который отвечает за перестройку ссылок.

История изменений

  • С версии 1.5.0 — функция введена в WordPress.

Код функции GET_YEAR_LINK()

Функция расположена в файле wp-includes/link-template.php:

function get_year_link( $year ) {
    global $wp_rewrite;
    if ( ! $year ) {
        $year = current_time( 'Y' );
    }
    $yearlink = $wp_rewrite->get_year_permastruct();
    if ( ! empty( $yearlink ) ) {
        $yearlink = str_replace( '%year%', $year, $yearlink );
        $yearlink = home_url( user_trailingslashit( $yearlink, 'year' ) );
    } else {
        $yearlink = home_url( '?m=' . $year );
    }

    /**
     * Фильтр для постоянной ссылки на архив за год.
     *
     * @since 1.5.0
     *
     * @param string $yearlink Ссылка на архив за год.
     * @param int    $year     Год архива.
     */
    return apply_filters( 'year_link', $yearlink, $year );
}

Связанные функции

  • admin_url()
  • attachment_url_to_postid()
  • build_query()
  • comment_link()
  • content_url()
  • get_comments_link()
  • get_page_link()
  • get_post_permalink()
  • get_home_url()
  • site_url()

Это улучшенная версия статьи на русском языке о функции get_year_link(), выполненная в соответствии с указанными требованиями.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *