wp_list_pages()

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

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

Функция wp_list_pages() используется для получения или отображения списка страниц (или иерархических элементов типа записи) в формате списка (li).

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

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

Функция wp_list_pages() принимает один параметр — массив или строку аргументов, которые используются для генерации списка страниц. Аргументы могут быть переданы в виде массива или строки.

  • $args (array|string) — Дополнительные аргументы для генерации списка страниц. См. функцию get_pages() для получения дополнительных аргументов.
  • child_of (int) — Отображать только подстраницы одной страницы по ее ID. По умолчанию 0 (все страницы).
  • authors (string) — Список ID авторов, разделенных запятыми. По умолчанию пусто (все авторы).
  • date_format (string) — Формат даты PHP для отображения страниц. Зависит от параметра show_date. По умолчанию значение параметра date_format.
  • depth (int) — Количество уровней в иерархии страниц, которые будут включены в сгенерированный список. Принимает значения -1 (любая глубина), 0 (все страницы), 1 (только страницы верхнего уровня) и n (страницы до указанной глубины n). По умолчанию 0.
  • echo (bool) — Выводить или нет список страниц. По умолчанию true.
  • exclude (string) — Список ID страниц, которые нужно исключить. Разделены запятыми.
  • include (array) — Список ID страниц, которые нужно включить. Разделены запятыми.
  • link_after (string) — Текст или HTML, который будет добавлен после ссылки на страницу. По умолчанию null.
  • link_before (string) — Текст или HTML, который будет добавлен перед ссылкой на страницу. По умолчанию null.
  • post_type (string) — Тип записи для запроса. По умолчанию ‘page’.
  • post_status (string|array) — Список статусов записей, которые нужно включить. По умолчанию ‘publish’.
  • show_date (string) — Отображать дату публикации или изменения страницы для каждой страницы. Принимает значения ‘modified’ или любое другое значение. Пустое значение скрывает дату.
  • sort_column (string) — Список имен столбцов для сортировки страниц. Принимает значения ‘post_author’, ‘post_date’, ‘post_title’, ‘post_name’, ‘post_modified’, ‘post_modified_gmt’, ‘menu_order’, ‘post_parent’, ‘ID’, ‘rand’ или ‘comment_count’. По умолчанию ‘post_title’.
  • title_li (string) — Заголовок списка. Передача значения null или пустой строки приведет к отсутствию заголовка, и список не будет обернут тегами неупорядоченного списка. По умолчанию ‘Pages’.
  • item_spacing (string) — Сохранять или отбрасывать пробелы в HTML-разметке меню. Принимает значения ‘preserve’ или ‘discard’. По умолчанию ‘preserve’.
  • walker (Walker) — Экземпляр класса Walker для перечисления страниц. По умолчанию пусто, что приводит к использованию экземпляра класса Walker_Page.

Функция возвращает void, если аргумент ‘echo’ равен true, и HTML-список страниц, если ‘echo’ равен false.

<?php
$args = array(
  'child_of' => 5,
  'authors' => '1,2,3',
  'date_format' => 'F j, Y',
  'depth' => 2,
  'echo' => false,
  'exclude' => '10,20,30',
  'include' => array(1, 2, 3),
  'link_after' => '</span>',
  'link_before' => '<span>',
  'post_type' => 'page',
  'post_status' => 'publish',
  'show_date' => 'modified',
  'sort_column' => 'post_title',
  'title_li' => 'My Pages',
  'item_spacing' => 'preserve',
  'walker' => new My_Custom_Walker()
);
$pages = wp_list_pages( $args );
if ( $pages ) {
  echo '<ul>' . $pages . '</ul>';
}
?>

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

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

Получение списка всех страниц


$args = array(
    'title_li' => null
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo '<ul>' . $pages . '</ul>';
}

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

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


$args = array(
    'authors' => '1,2,3'
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo '<ul>' . $pages . '</ul>';
}

В этом примере мы используем аргумент authors для указания авторов страниц, которые мы хотим отобразить в списке. В данном случае мы указываем авторов с ID 1, 2 и 3. Затем мы выводим список страниц с указанными авторами.

Форматирование даты в списке страниц


$args = array(
    'show_date' => 'modified',
    'date_format' => 'F j, Y'
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo '<ul>' . $pages . '</ul>';
}

В этом примере мы используем аргумент show_date для отображения даты последнего изменения страницы в списке. Мы также используем аргумент date_format для указания формата даты. Затем мы выводим список страниц с отформатированными датами.

Вывод только определенного уровня страниц


$args = array(
    'depth' => 1
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo '<ul>' . $pages . '</ul>';
}

В этом примере мы используем аргумент depth для указания уровня страниц, которые мы хотим отобразить в списке. В данном случае мы указываем глубину 1, что означает, что будут отображены только страницы верхнего уровня. Затем мы выводим список страниц указанного уровня.

Скрытие списка страниц


$args = array(
    'title_li' => ''
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo $pages;
}

В этом примере мы используем аргумент title_li и устанавливаем его в пустую строку, чтобы скрыть заголовок списка страниц. Затем мы выводим только список страниц без заголовка.

Исключение определенных страниц из списка


$args = array(
    'exclude' => '1,2,3'
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo '<ul>' . $pages . '</ul>';
}

В этом примере мы используем аргумент exclude для исключения определенных страниц из списка. В данном случае мы исключаем страницы с ID 1, 2 и 3. Затем мы выводим список страниц без указанных страниц.

Включение только определенных страниц в список


$args = array(
    'include' => '4,5,6'
);
 
$pages = wp_list_pages($args);
 
if ($pages) {
    echo '<ul>' . $pages . '</ul>';
}

В этом примере мы используем аргумент include для включения только определенных страниц в список. В данном случае мы включаем страницы с ID 4, 5 и 6. Затем мы выводим список только указанных страниц.

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

Как вывести список страниц в HTML-формате?

Для вывода списка страниц в HTML-формате в WordPress используется функция wp_list_pages(). Она позволяет получить или отобразить список страниц в виде списка (li) в HTML.

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

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

Пример использования функции wp_list_pages():


$args = array(
    'title_li' => 'Pages',
    'depth' => 1
);
echo wp_list_pages($args);

Как изменить порядок отображения страниц в списке?

Для изменения порядка отображения страниц в списке можно использовать аргумент ‘sort_column’ функции wp_list_pages(). Этот аргумент принимает список имен столбцов, по которым нужно отсортировать страницы.

По умолчанию, страницы сортируются по названию (‘post_title’).

Пример использования аргумента ‘sort_column’ для сортировки страниц по дате изменения:


$args = array(
    'title_li' => 'Pages',
    'sort_column' => 'post_modified',
    'sort_order' => 'DESC'
);
echo wp_list_pages($args);

Как исключить определенные страницы из списка?

Для исключения определенных страниц из списка можно использовать аргумент ‘exclude’ функции wp_list_pages(). Этот аргумент принимает список ID страниц, которые нужно исключить из списка.

Пример использования аргумента ‘exclude’ для исключения страниц с ID 1 и 2 из списка:


$args = array(
    'title_li' => 'Pages',
    'exclude' => '1,2'
);
echo wp_list_pages($args);

Как включить только определенные страницы в список?

Для того чтобы включить только определенные страницы в список, вы можете использовать параметр include. В этом параметре вы должны указать ID страниц, которые вы хотите включить в список. Например:


$args = array(
    'include' => '2, 5, 10'
);
wp_list_pages($args);

Как изменить формат даты отображения для страниц?

Для изменения формата даты отображения для страниц, вы можете использовать параметр date_format. В этом параметре вы должны указать формат даты в соответствии с синтаксисом PHP. Например:


$args = array(
    'date_format' => 'F j, Y'
);
wp_list_pages($args);

Как изменить формат ссылок перед и после названия страницы?

Для изменения формата ссылок перед и после названия страницы, вы можете использовать параметры link_before и link_after. В этих параметрах вы можете указать текст или HTML, который будет добавлен перед и после названия страницы. Например:


$args = array(
    'link_before' => '<span class="page-link">',
    'link_after' => '</span>'
);
wp_list_pages($args);

Как вывести только подстраницы определенной страницы?

Для вывода только подстраниц определенной страницы с помощью функции wp_list_pages() необходимо использовать аргумент child_of. Значение этого аргумента должно быть ID страницы, для которой нужно вывести подстраницы. По умолчанию значение аргумента равно 0, что означает вывод всех страниц.

Пример кода:


$args = array(
    'child_of' => 5 // ID страницы, для которой нужно вывести подстраницы
);
 
wp_list_pages( $args );

Как изменить количество уровней в иерархии страниц, отображаемых в списке?

Для изменения количества уровней в иерархии страниц, отображаемых в списке, используется аргумент depth. Значение этого аргумента может быть -1 (любая глубина), 0 (все страницы), 1 (только верхние уровни) или n (определенная глубина). По умолчанию значение аргумента равно 0.

Пример кода:


$args = array(
    'depth' => 2 // Отображение двух уровней иерархии страниц
);
 
wp_list_pages( $args );

Как изменить заголовок списка страниц?

Для изменения заголовка списка страниц используется аргумент title_li. Значение этого аргумента задает текст заголовка. По умолчанию значение аргумента равно ‘Pages’.

Пример кода:


$args = array(
    'title_li' => 'My Pages' // Заголовок списка страниц
);
 
wp_list_pages( $args );

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

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

  • Функция get_pages(): возвращает массив объектов страниц (или иерархических элементов типа записи) в соответствии с заданными аргументами.
  • Функция wp_get_nav_menu_items(): возвращает массив объектов элементов меню, связанных с указанным меню.
  • Функция wp_list_categories(): выводит список категорий в виде HTML.
  • Функция wp_list_comments(): выводит список комментариев в виде HTML.
  • Функция wp_list_authors(): выводит список авторов в виде HTML.
  • Функция wp_list_bookmarks(): выводит список закладок в виде HTML.
  • Функция wp_list_pluck(): извлекает значение указанного ключа из массива объектов или ассоциативного массива.
  • Класс Walker_Page: используется для создания HTML-структуры списка страниц.
  • Класс Walker_Nav_Menu: используется для создания HTML-структуры списка элементов меню.
Обсуждение