parent_dropdown()
Получает список дочерних страниц указанной родительской страницы. Выводит HTML список элементов <option> для элемента <select>.
Результат нужно оборачивать тегом <select>.
Выводит также дочерние страницы для каждой полученной дочерней страницы, если они есть. Эта рекурсия продолжается до конца, т.е. будет получено все дерево дочерних страниц...
Функция работает только с типом записей page
. Если нужен другой тип записей, то используйте код функции для создания собственной аналогичной функции...
Функция определена только в админке. Если нужна во фронте, подключите этот файл:
require_once ABSPATH .'wp-admin/includes/template.php';
1 раз — 0.001482 сек (очень медленно) | 50000 раз — 52 сек (очень медленно)
Хуков нет.
Возвращает
null|false
. False, если дочерних страниц нет. Если есть, то сразу выведет на экран HTML код.
Использование
parent_dropdown( $default, $parent, $level, $post );
- $default(число)
- ID страницы которая будет выбрана в списке.
По умолчанию: 0 - $parent(число)
- ID родительской страницы, дочерние которой нужно получить.
По умолчанию: 0 - $level(число)
- Текущий уровень элементов <option>. Если указать 1, то элементам будет добавлен визуальный отступ слева. Нужно чтобы встраивать элементы в уже существующий список. Обычно этот параметр не указывается, он используется самой функцией в рекурсии.
По умолчанию: 0 - $post(число/WP_Post)
- ID страницы, которую нужно исключить из списка. По умолчанию указывается текущая страница.
По умолчанию: null
Примеры
#1 Выведем выпадающий список дочерних страниц
<?php // чтобы работало во фронт-энде // require_once ABSPATH .'wp-admin/includes/template.php'; ?> <select name="my_page"> <?php parent_dropdown( 25, 280 ); ?> </select>
Получим:
<select name="my_page"> <option class='level-0' value='3484' > Дочерняя страница 1</option> <option class='level-0' value='1544' > Дочерняя страница 2</option> <option class='level-1' value='1787' > Дочерняя страница 1, дочерней страницы 2</option> <option class='level-0' value='3644' > Дочерняя страница 3</option> </select>
Заметки
- Global. wpdb. $wpdb WordPress database abstraction object.
Список изменений
С версии 1.5.0 | Введена. |
С версии 4.4.0 | $post argument was added. |