wp_list_pages() — выводит список страниц

Выводит список страниц WordPress в виде ссылок на них. Часто используется в темах в шапке и в сайдбаре.

wp_list_pages($args = '')
$args
(массив) Список значений параметра $args по умолчанию:
$args = array(
    'authors'      => '', // все авторы
    'child_of'     => 0, // и родительские и дочерние страницы
    'date_format'  => get_option('date_format'),
    'depth'        => 0, // любой уровень вложенности
    'echo'         => 1, // вывести результат
    'exclude'      => '', // ничего не исключать
    'include'      => '', // не выводить какие-либо конкретные страницы
    'link_after'   => '', // ничего не добавлять перед ссылкой
    'link_before'  => '', // ничего не добавлять после ссылки
    'post_type'    => 'page', // тип поста - только страницы
    'post_status'  => 'publish', // статус - только опубликованные
    'show_date'    => '', // не указывать дату
    'sort_column'  => 'menu_order, post_title', // сорировать по порядку, а затем по заголовку
        'sort_order'   => '', // порядок сортировки - по возрастанию
    'title_li'     => __('Pages'), // заголовок списка - Страницы
);
authors
(строка) Укажите через запятую ID авторов, страницы, опубликованные которыми, нужно вывести.
<ul>
    <?php wp_list_pages( 'authors=1,15' ) ?>
</ul>
child_of
(целое число) Выводит дочерние страницы, находящихся на всех уровнях вложенности, для страницы с указанным ID.
<ul>
    <?php wp_list_pages( 'child_of=15' ) ?>
</ul>
show_date
(строка) Нужно ли отобразить дату публикации или изменения страницы:
  • modified — выводить дату изменения,
  • created (либо любое другое значение, отличное от пустой строки) — отображать дату публикации;
date_format
(строка) Формат даты (зависит от предыдущего параметра). Пример:
<ul>
    <?php 
        $args = array(
            'show_date' => 'modified',
            'date_format' => 'j M Y'
        );
        wp_list_pages( $args );
    ?>
</ul>
sort_column
(строка) По какому параметру сортировать выводимые ссылки на страницы:
  • post_title — по заголовку страниц,
  • menu_order — по порядку (устанавливается в админке при редактировании страниц),
  • post_date — по дате создания,
  • post_modified — по дате последнего изменения,
  • ID — по ID,
  • post_author — по ID автора,
  • post_name — по ярлыку страниц;
sort_order
(строка) Порядок сортировки:
  • ASC — по возврастанию (по умолчанию),
  • DESC — по убыванию;

Сортируем по заголовку в обратном алфавитном порядке:

<ul>
    <?php wp_list_pages( 'sort_column=post_title&sort_order=DESC' ) ?>
</ul>
exclude
(строка) Укажите через запятую ID страниц, которые нужно исключить из списка.
exclude_tree
(строка) Укажите через запятую ID родительских страниц, которые нужно исключить из списка вместе с их дочерними страницами.
include
(строка) Если вам нужно включить только какие-то конкретные страницы в выводимый список, укажите их IDы через запятую, используя этот параметр.
depth
(целое число) Параметр позволяет задать максимальный уровень вложенности выводимых страниц:
  • 0 — любой уровень вложенности, страницы выводятся с учетом иерархии,
  • -1 — любой уровень вложенности, но без учета иерархии,
  • 1 — только страницы с нулевым уровнем вложенности,
  • 2, 3, … — укажите максимальный уровень вложенности страниц.
title_li
(строка) Заголовок списка. Если указать null или пустое значение, заголовок не будет добавлен, а список не будет заключен в тег <ul>.
Например в этих случаях заголовка не будет:
<ul>
    <?php wp_list_pages('title_li='); ?>
</ul>
<ul>
    <?php wp_list_pages('exclude=1,3,7&title_li='); ?>
</ul>
echo
(логическое) Что в итоге нужно сделать с полученным результатом:
  • 1 (true) — вывести,
  • 0 (false) — возвратить.
<?php
$children53 = wp_list_pages('title_li=&child_of=53&echo=0');
if ($children53) { ?>
<ul>
    <?php echo $children53; ?>
</ul>
<?php } ?>
meta_key
(строка) Название произвольного поля (используется в совокупности с параметром meta_value).
meta_value
(строка) Значение произвольного поля (используется в совокупности с параметром meta_key).
<ul>
    <?php wp_list_pages( 'meta_key=color&meta_value=white' ) ?>
</ul>
link_before
(строка) Текст или код HTML, который нужно добавить перед анкором ссылки внутри тега <a>.
link_after
(строка) Текст или код HTML, который нужно добавить после анкора ссылки внутри тега <a>.
number
(целое число) Количество ссылок на страниц, которое нужно вывести (по умолчанию — все).
offset
(целое число) Количество страниц с начала списка, которые нужно пропустить.
post_type
(строка) Вы можете выводить не только страницы, но и другие типы постов с иерархией.
Например выведем работы из портфолио:
$args = array(
    'post_type'=> 'portfolio',
    'title_li'=> 'Портфолио'
);
wp_list_pages( $args );
post_status
(строка) Страницы с какими статусами следует включить в список. Например, опубликованные или черновики. Список всех статусов здесь. Можно указать несколько статусов через запятую.

Список изменений:

  • 2.7 : Добавлены параметры link_before, link_after и exclude_tree.
  • 2.8 : Добавлены параметры number и offset.

Источник: misha.blog

Миша Рудрастых

Путешествует по миру и рассказывает всем о WordPress лично, у себя в блогах и на курсах в Санкт-Петербурге. Умеет просто объяснять сложные вещи, делает это красиво. Организовывает неплохие WordCamp's, но совсем не умеет слушать чужие доклады.

Добавить комментарий

%d такие блоггеры, как: