Функция page_template_dropdown()
в WordPress предоставляет простой способ отображения выпадающего списка шаблонов страниц в административной панели, позволяя пользователям выбирать нужный шаблон для страниц.
page_template_dropdown()
предназначена для вывода элементов <option>
внутри поля <select>
, отображающего все доступные шаблоны страниц для указанного типа записи. Используется исключительно в административной панели WordPress, и если требуется использовать её на фронтенде, необходимо подключить дополнительные файлы.
page_template_dropdown( $default = '', $post_type = 'page' );
Параметры:
$default
(необязательный) — Имя файла шаблона, который должен быть выбран по умолчанию в выпадающем списке. Если не указано, по умолчанию выбрано первое доступное значение.$post_type
(необязательный) — Тип записи, для которого необходимо получить шаблоны. С версии 4.7 можно указывать шаблоны для любых типов записей. По умолчанию используется'page'
.
Возвращаемое значение:
Функция не возвращает значение. Вместо этого она выводит HTML-код для использования в поле <select>
.
Функция работает на основе:
get_page_templates()
Пример 1: Использование в административной панели
function my_custom_page_template_meta_box() {
add_meta_box(
'custom_page_template_meta_box', // ID метабокса
'Выбор шаблона страницы', // Заголовок метабокса
'render_custom_page_template_meta_box', // Функция для отображения содержимого
'page', // Тип записи (в данном случае - страницы)
'side', // Местоположение (боковая панель)
'default' // Контекст
);
}
add_action( 'add_meta_boxes', 'my_custom_page_template_meta_box' );
function render_custom_page_template_meta_box() {
global $post;
// Получаем текущий шаблон страницы
$current_template = get_post_meta( $post->ID, '_wp_page_template', true );
// Выводим выпадающий список шаблонов
page_template_dropdown( $current_template );
}
Пример 2: Использование на фронтенде
Функция page_template_dropdown()
обычно используется в административной панели. Для её использования на фронтенде необходимо подключить некоторые файлы (см пример):
<?php
// Подключаем необходимые файлы
require_once ABSPATH . '/wp-admin/includes/theme.php';
require_once ABSPATH . '/wp-admin/includes/template.php';
?>
<select name="page_template" id="page_template">
<?php page_template_dropdown(); ?>
</select>
Результат
При использовании функции page_template_dropdown()
в административной панели или на фронтенде, вы получите HTML-код, который будет выглядеть следующим образом:
<select name="page_template" id="page_template">
<option value='template-about.php' >Страница Об Авторе</option>
<option value='template-contact.php' >Страница Контакты</option>
</select>
Примечания
- Функция
page_template_dropdown()
выводит HTML-код для выпадающего списка шаблонов страниц, а не возвращает его как строку. - Для использования функции на фронтенде требуется подключение файлов
theme.php
иtemplate.php
, которые находятся в директории админ-панели WordPress.
Заключение
Функция page_template_dropdown()
упрощает управление шаблонами страниц, предоставляя пользователям удобный интерфейс для выбора шаблона в административной панели WordPress.