WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru Хостинг, VPS/VDS и отдельные сервера только на SSD дисках. 7 дней бесплатного тестирования.

get_page_template_slug() WP 3.4.0

Получает название специального шаблона записи (поста).

Получает название php файла, который установлен как шаблон для указанной записи (поста). Если шаблон для записи не установлен, получит пустую строку.

Заметки
  1. Название файла шаблона располагается в произвольном поле _wp_page_template (таблица БД wp_postmeta). Если файл шаблона страницы расположен в подкаталоге родительской или дочерней темы, то значение wp_postmeta будет такое:

    подкаталог/file-name.php
  2. Функция вернет пустую строку, если метаполя "_wp_page_template" нет или его значение равно "default".

  3. Произвольные поля начинающиеся с "_" не отображаются в админ-панели в блоке "произвольные поля". Такие названия считаются служебными в WordPress. Поэтому чтобы получить название, можно использовать:

    $template = get_post_meta( $post->ID, '_wp_page_template', true );
Работает на основе: get_post(), get_post_meta()

Хуков нет.

Возвращает

Строку/true/false.

  • Название файла шаблона.
  • Пустую строку, если для страницы не установлен никакой шаблон.
  • false, если пост не найден.

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

$page_template_slug = get_page_template_slug( $post_id );
$post_id(число)
ID страницы, которую нужно проверить. По умолчанию: текущая запись в цикле (глобальной переменной $post).
По умолчанию: null

Примеры

#1 Выведем название шаблона страницы 123

echo get_page_template_slug( 123 ); //> file-name.php

Код get_page_template_slug: wp-includes/post-template.php VER 5.0.1

<?php
function get_page_template_slug( $post = null ) {
	$post = get_post( $post );

	if ( ! $post ) {
		return false;
	}

	$template = get_post_meta( $post->ID, '_wp_page_template', true );

	if ( ! $template || 'default' == $template ) {
		return '';
	}

	return $template;
}

Cвязанные функции

Из раздела: Страницы

Комментариев нет
    Здравствуйте, !     Войти . Зарегистрироваться