wp_get_archives()

Отображает ссылки на архивы на основе типа и формата
Функция WordPress
INT 1.2.0
WordPress Icon
Содержание
  1. Описание функции
  2. Примеры использования
  3. Получение архивных ссылок по дням
  4. Отображение архивных ссылок в виде списка
  5. Форматирование архивных ссылок в виде выпадающего списка
  6. Сортировка архивных ссылок по возрастанию
  7. Отображение количества записей рядом с архивными ссылками
  8. Вопросы и ответы
  9. Как изменить тип архива, который выводится функцией wp_get_archives()?
  10. Как ограничить количество ссылок на архивы, выводимых функцией wp_get_archives()?
  11. Как изменить формат ссылок на архивы, выводимых функцией wp_get_archives()?
  12. Как добавить свой маркер в начало и/или конец каждой ссылки на архивы, выводимой функцией wp_get_archives()?
  13. Как отобразить количество записей рядом со ссылками на архивы, выводимыми функцией wp_get_archives()?
  14. Как изменить порядок сортировки ссылок на архивы, выводимых функцией wp_get_archives()?
  15. Как изменить тип записей, для которых выводятся ссылки на архивы, с помощью функции wp_get_archives()?
  16. Как изменить год, месяц, день или неделю, для которых выводятся ссылки на архивы, с помощью функции wp_get_archives()?
  17. Связанные элементы

Описание функции

Функция wp_get_archives() отображает ссылки на архивы на основе типа и формата.

Функция используется для вывода ссылок на архивы WordPress на веб-странице. Ссылки могут быть отформатированы в соответствии с заданными параметрами и могут отображаться в виде списка или в виде выпадающего списка.

Функция предоставляет гибкую настройку вывода ссылок на архивы, позволяя выбирать тип архива (ежедневный, еженедельный, ежемесячный, ежегодный и т.д.), задавать формат каждой ссылки, указывать количество ссылок, отображать количество записей в архиве и многое другое.

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

wp_get_archives( string|array $args = '' ): void|string

Функция wp_get_archives() принимает один параметр $args, который является необязательным и по умолчанию равен пустой строке. Параметр $args позволяет настроить вывод ссылок на архивы.

  • $args (string|array): Необязательный. Аргументы ссылок на архивы по умолчанию. Может быть строкой или массивом параметров.
  • type (string): Тип архива, который нужно получить. Принимает значения ‘daily’, ‘weekly’, ‘monthly’, ‘yearly’, ‘postbypost’ или ‘alpha’. ‘postbypost’ и ‘alpha’ отображают одинаковый список ссылок на архивы, а также заголовки записей вместо отображения дат. Разница между ними заключается в том, что ‘alpha’ сортирует по заголовку записи, а ‘postbypost’ сортирует по дате записи. По умолчанию ‘monthly’.
  • limit (string|int): Количество ссылок, которое нужно ограничить в запросе. По умолчанию пусто (без ограничения).
  • format (string): Формат каждой ссылки, используя аргументы $before и $after. Принимает значения ‘link’ (тег <a>), ‘option’ (тег <option>), ‘html’ (тег <li>), или пользовательский формат, который генерирует якорную ссылку с предшествующим $before и последующим $after. По умолчанию ‘html’.
  • before (string): Разметка, которая будет добавлена перед каждой ссылкой. По умолчанию пусто.
  • after (string): Разметка, которая будет добавлена после каждой ссылки. По умолчанию пусто.
  • show_post_count (bool): Определяет, нужно ли отображать количество записей рядом со ссылкой. По умолчанию false.
  • echo (bool|int): Определяет, нужно ли выводить ссылки на архивы или возвращать их в виде строки. По умолчанию 1 (true) для вывода.
  • order (string): Определяет, следует ли использовать возрастающий или убывающий порядок. Принимает значения ‘ASC’ или ‘DESC’. По умолчанию ‘DESC’.
  • post_type (string): Тип записи. По умолчанию ‘post’.
  • year (string): Год. По умолчанию текущий год.
  • monthnum (string): Номер месяца. По умолчанию текущий номер месяца.
  • day (string): День. По умолчанию текущий день.
  • w (string): Неделя. По умолчанию текущая неделя.

Функция возвращает либо void (если аргумент ‘echo’ равен true), либо строку с ссылками на архивы (если аргумент ‘echo’ равен false).

<?php
$args = array(
  'type'            => 'monthly',
  'limit'           => '',
  'format'          => 'html',
  'before'          => '',
  'after'           => '',
  'show_post_count' => false,
  'echo'            => 1,
  'order'           => 'DESC',
  'post_type'       => 'post',
  'year'            => '',
  'monthnum'        => '',
  'day'             => '',
  'w'               => ''
);
$archives = wp_get_archives( $args );
echo $archives;
?>

В этом примере мы создаем массив $args, в котором задаем различные параметры для вывода ссылок на архивы. Затем мы вызываем функцию wp_get_archives() с этим массивом в качестве аргумента и сохраняем результат в переменную $archives. Наконец, мы выводим ссылки на архивы, используя переменную $archives.

Примеры использования

Получение архивных ссылок по дням


$args = array(
    'type' => 'daily',
    'limit' => 10,
    'format' => 'html',
    'before' => '',
    'after' => '',
    'show_post_count' => false,
    'echo' => false
);
$archives = wp_get_archives($args);
echo $archives;

В данном примере мы получаем архивные ссылки по дням, ограничиваясь 10 ссылками. Форматирование ссылок осуществляется в HTML. Мы не добавляем никакой разметки перед и после каждой ссылки, и не отображаем количество записей рядом с ссылками. Результат функции сохраняется в переменную $archives и выводится на экран.

Отображение архивных ссылок в виде списка


$args = array(
    'type' => 'monthly',
    'limit' => '',
    'format' => 'html',
    'before' => '<ul>',
    'after' => '</ul>',
    'show_post_count' => false,
    'echo' => false
);
$archives = wp_get_archives($args);
echo $archives;

В данном примере мы получаем архивные ссылки по месяцам без ограничения количества ссылок. Форматирование ссылок осуществляется в HTML. Мы добавляем разметку в виде начала и конца списка. Количество записей рядом с ссылками не отображается. Результат функции сохраняется в переменную $archives и выводится на экран.

Форматирование архивных ссылок в виде выпадающего списка


$args = array(
    'type' => 'yearly',
    'limit' => '',
    'format' => 'option',
    'before' => '',
    'after' => '',
    'show_post_count' => false,
    'echo' => false
);
$archives = wp_get_archives($args);
echo '<select>' . $archives . '</select>';

В данном примере мы получаем архивные ссылки по годам без ограничения количества ссылок. Форматирование ссылок осуществляется в виде опций выпадающего списка. Мы не добавляем никакой разметки перед и после каждой ссылки, и не отображаем количество записей рядом с ссылками. Результат функции сохраняется в переменную $archives и выводится на экран внутри тега <select>.

Сортировка архивных ссылок по возрастанию


$args = array(
    'type' => 'monthly',
    'limit' => '',
    'format' => 'html',
    'before' => '',
    'after' => '',
    'show_post_count' => false,
    'echo' => false,
    'order' => 'ASC'
);
$archives = wp_get_archives($args);
echo $archives;

В данном примере мы получаем архивные ссылки по месяцам без ограничения количества ссылок. Форматирование ссылок осуществляется в HTML. Мы не добавляем никакой разметки перед и после каждой ссылки, и не отображаем количество записей рядом с ссылками. Результат функции сохраняется в переменную $archives и выводится на экран. Ссылки сортируются в возрастающем порядке.

Отображение количества записей рядом с архивными ссылками


$args = array(
    'type' => 'monthly',
    'limit' => '',
    'format' => 'html',
    'before' => '',
    'after' => '',
    'show_post_count' => true,
    'echo' => false
);
$archives = wp_get_archives($args);
echo $archives;

В данном примере мы получаем архивные ссылки по месяцам без ограничения количества ссылок. Форматирование ссылок осуществляется в HTML. Мы не добавляем никакой разметки перед и после каждой ссылки, но отображаем количество записей рядом с ссылками. Результат функции сохраняется в переменную $archives и выводится на экран.

Вопросы и ответы

Как изменить тип архива, который выводится функцией wp_get_archives()?

Для изменения типа архива, который выводится функцией wp_get_archives(), можно использовать параметр type. По умолчанию, тип архива установлен как ‘monthly’.


$args = array(
    'type' => 'weekly'
);
wp_get_archives( $args );

Как ограничить количество ссылок на архивы, выводимых функцией wp_get_archives()?

Для ограничения количества ссылок на архивы, выводимых функцией wp_get_archives(), можно использовать параметр limit. По умолчанию, ограничение не установлено.


$args = array(
    'limit' => 5
);
wp_get_archives( $args );

Как изменить формат ссылок на архивы, выводимых функцией wp_get_archives()?

Для изменения формата ссылок на архивы, выводимых функцией wp_get_archives(), можно использовать параметр format. По умолчанию, формат установлен как ‘html’.


$args = array(
    'format' => 'option'
);
wp_get_archives( $args );

Как добавить свой маркер в начало и/или конец каждой ссылки на архивы, выводимой функцией wp_get_archives()?

Для добавления своего маркера в начало и/или конец каждой ссылки на архивы, выводимой функцией wp_get_archives(), можно использовать параметры before и after. По умолчанию, маркеры не установлены.


$args = array(
    'before' => '<span class="marker">',
    'after' => '</span>'
);
wp_get_archives( $args );

Как отобразить количество записей рядом со ссылками на архивы, выводимыми функцией wp_get_archives()?

Чтобы отобразить количество записей рядом со ссылками на архивы, необходимо установить параметр show_post_count в значение true. По умолчанию этот параметр имеет значение false. Ниже приведен пример кода:


$args = array(
    'show_post_count' => true
);
wp_get_archives($args);

Как изменить порядок сортировки ссылок на архивы, выводимых функцией wp_get_archives()?

Для изменения порядка сортировки ссылок на архивы необходимо установить параметр order в значение ASC для сортировки по возрастанию или DESC для сортировки по убыванию. По умолчанию используется сортировка по убыванию. Ниже приведен пример кода:


$args = array(
    'order' => 'ASC'
);
wp_get_archives($args);

Как изменить тип записей, для которых выводятся ссылки на архивы, с помощью функции wp_get_archives()?

Для изменения типа записей, для которых выводятся ссылки на архивы, необходимо установить параметр post_type в нужное значение. По умолчанию используется тип записей «post». Ниже приведен пример кода:


$args = array(
    'post_type' => 'custom_post_type'
);
wp_get_archives($args);

Как изменить год, месяц, день или неделю, для которых выводятся ссылки на архивы, с помощью функции wp_get_archives()?

Для изменения года, месяца, дня или недели, для которых выводятся ссылки на архивы, необходимо установить соответствующие параметры: year, monthnum, day или w. По умолчанию используются текущие значения. Ниже приведен пример кода:


$args = array(
    'year' => '2022',
    'monthnum' => '01',
    'day' => '01',
    'w' => '01'
);
wp_get_archives($args);

Функция wp_get_archives() позволяет выводить ссылки на архивы в зависимости от типа, формата и других параметров. С ее помощью можно легко настроить отображение архивов на сайте WordPress. Используя документацию WordPress, разработчики могут быстро и эффективно использовать эту функцию в своих проектах.

Связанные элементы

  • Функция get_archives_link(): возвращает ссылку на архив.
  • Хук get_archives_link: позволяет изменить ссылку на архив.
  • Хук widget_archives_args: позволяет изменить аргументы виджета архивов.
  • Хук widget_archives_dropdown_args: позволяет изменить аргументы выпадающего списка виджета архивов.
  • Хук wp_dropdown_cats: позволяет изменить аргументы выпадающего списка категорий.
  • Класс WP_Widget_Archives: представляет виджет архивов, который отображает ссылки на архивы.
  • Класс Walker_CategoryDropdown: представляет класс для создания выпадающего списка категорий.
Обсуждение