page_template_dropdown() WP 1.5.0

Отримує файли шаблону для зазначеного типу запису та виводить їх на екран у вигляді елементів <option> для select поля форми.

Функція розрахована для роботи на адмін-панелі. Якщо вона потрібна у фронті, потрібно підключити файли:

require_once ABSPATH. '/wp-admin/includes/theme.php';
require_once ABSPATH. '/wp-admin/includes/template.php';

Працює на основі:
get_page_templates()

Хуків немає.

Повертає

null. Нічого. Виводить на екран HTML код для використання в <select> .

Використання

page_template_dropdown($default, $post_type);
$default
(рядок)
Назва файлу шаблону, який має бути обраний у select.


За замовчуванням: ”
$post_type
(рядок)
Тип запису, для якого потрібно отримати шаблони. З версії 4.7. шаблони можна вказувати будь-яких типів записів.


За замовчуванням: ‘page’

Приклади

0

#1 Демонстрація роботи

<?php
// для фронту
require_once ABSPATH. '/wp-admin/includes/theme.php';
require_once ABSPATH. '/wp-admin/includes/template.php';
?>
<select name="" id="">
	<?php page_template_dropdown(); ?>
</select>
<?php

В результаті отримаємо такий HTML:

<select name="" id="">    
	<option value='page_tpl_custom.php' >Мій шаблон сторінки</option>
	<option value='page_tpl_custom2.php' >Ще один шаблон сторінки</option>
</select>

список змін

З версії 1.5.0Введено.
З версії 4.7.0Added $post_type parameter.

Код page_template_dropdown() WP 6.0.2

function page_template_dropdown( $default_template = '', $post_type = 'page' ) {
	$templates = get_page_templates( null, $post_type );

	ksort($templates);

	foreach ( array_keys( $templates ) as $template ) {
		$selected = selected( $default_template, $templates[ $template ], false );
		echo "nt<option value='" . esc_attr($templates[$template]). "$selected>" . esc_html($template). '</option>';
	}
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *