Функция: get_template_part

01.04.2012
Описание

Подключает указанный файл шаблона. Используется для загрузки часто повторяющегося кода шаблона, вынесенного в отдельные файлы. Также используется для загрузки секций кода родительского шаблона для текущего дочернего шаблона (полезно при мультисайтовости). Подключаемые файлы должны называться {slug}-{name}.php, где {slug} это основное имя подключаемого файла, а {name} дополнительное опциональное имя.

Использование
<?php get_template_part($slug, $name); ?>
Параметры

$slug

(строка) (обязательный) основное имя подключаемого файла шаблона.

По умолчанию значения нет.

$name

(строка) (необязательный) дополнительное имя подключаемого файла шаблона.

По умолчанию значения нет.

Примеры

1. Загрузка файла loop.php

Если вынести код цикла вывода записей в отдельный файл loop.php, то для его загрузки в нужных файлах шаблона необходимо использовать код:

<?php get_template_part('loop'); ?>

2. Использование файла loop.php родительского шаблона в дочернем шаблоне

Предположим, что шаблоны находятся в папке wp-content/themes, родительский шаблон расположен в папке twentyten, а дочерний шаблон в twentytenchild.

<?php get_template_part('loop', 'index'); ?>

Данный код, в соответствии с работой функции PHP require(), вернет первый существующий файл из возможных вариантов:

1. wp-content/themes/twentytenchild/loop-index.php
2. wp-content/themes/twentytenchild/loop.php
3. wp-content/themes/twentyten/loop-index.php
4. wp-content/themes/twentyten/loop.php

Таким образом, если в текущем дочернем шаблоне не найдены файлы loop-index.php и loop.php, то они будут загружены из родительского шаблона. Если и в родительском шаблоне этих файлов не будет, то функция не будет ничего загружать.

3. Загрузка файла навигации nav.php

<?php get_template_part('nav'); ?>          
// будет загружен файл nav.php 
 
<?php get_template_part('nav', '2'); ?>     
// будет загружен файл nav-2.php 
 
<?php get_template_part('nav', 'single'); ?>
// будет загружен файл nav-single.php

Для разных страниц блога можно использовать разные файлы навигации. Например:

<?php if ( is_single() ) {
     get_template_part('nav', 'single'); 
} else {
     get_template_part('nav');
}?>

Данный код загрузит файл nav-single.php на страницах одиночных записей и файл nav.php на всех остальных.

Лог изменений

Функция добавлена в версии 3.0

Исходный файл

Функция get_template_part() находится в wp-includes/general-template.php

Связанные теги|функции
Рубрики: Теги шаблоновФункции WordPressУсловные теги

Понравился пост? Подпишись на обновления по Обновления блога по RSSRSS или Обновления блога на TwitterTwitter !

Комментарии (всего 17 комментариев)

Написать комментарий

(обязательно)

(обязательно, не публикуется)

Для вставки кода используйте кнопку "Код", по умолчанию используется синтаксис подсветки языка "php", вы можете поменять его на любой другой поддерживаемый GeSHi язык, например "javascript", "css", "html4strict", "sql" и тд. Используйте предпросмотр!
 


Подписаться на уведомления без комментирования.