Речь пойдет о том, как добавить в стандартный список имен шаблонов свой шаблон, который обрабатывается шаблонизатором drupal, для конкретного «своего» случая.
Начать нужно с того, что здесь описаны стандартные имена шаблонов для семерки. Имена шаблонов отличаются от 6й версии, возможно, с той целью, чтобы была возможность создать тему сразу для нескольких версий движка, с не пересекающимися именами файлов. Но это лишь моё предположение.
Там же в комментариях даны примеры для подключения шаблонов для D6 и D7. Они отличаются названием переменной списка имен шаблонов, для 7ки — это «theme_hook_suggestions»
|
|
<?php function themeName_preprocess_page(&$vars, $hook) { if (isset($vars['node'])) { // If the node type is "blog" the template suggestion will be "page--blog.tpl.php". $vars['theme_hook_suggestions'][] = 'page__'. str_replace('_', '--', $vars['node']->type); } } ?> |
Не очень ясно зачем переименовывать переменную этого списка. Наверняка, есть какие то причины. Объект «node» содержит весь набор полей, так что можно соорудить любое интересное в контексте вашей задачи условие и подключить соответствующий файл шаблона.
Данная запись опубликована в 09.06.2011 22:48 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Август 28, 2021 г.
Сниппет кода, демонстрирующий как alias создаётся в Drupal 9.
Ранее (в 8й версии) это был сервис ядра path.alias_storage, и код выглядел так:
[crayon-6a3f3b06794a7808318474/]
В 9й версии хранилище перенесли в entityTypeManager и потому выглядит ...
Читать
Май 21, 2023 г.
При импорте изображений возникает задача транслитерации. Картинки, например, могут содержать буквы национальной кодировки (кириллицы) и/или иметь несовместимые с файловой системой сервера символы.
Drupal (начиная с 8.2) объявляет специальный интерфейс, ...
Читать
Октябрь 4, 2024 г.
Проблема описана вот тут, и там даже предлагается патч https://www.drupal.org/files/issues/2024-05-28/3134922-40.patch,который частично решает проблему, но в #43 siavash (Sia) более подробно рассказывает о том, как сохраняются данные, и становится ясно, ...
Читать
Август 7, 2021 г.
Если файл загружен через поле, созданное в конструкторе полей какого либо entity Drupal, то соответствующий модуль, предоставляющий функционал загрузки файла, сам обеспечит установку необходимого статуса. Что если поле было создано программно, и требуется ...
Читать