Разные типы node view предназначены для темизации публикаций. Но drupal не даёт задавать новые представления из панели администрирования.
Рассмотрим как создавать их программно.
Чтобы в типах отображения публикации появилась новая (-ые) вкладки, требуется реализовать hook_entity_info_alter.
|
|
/** * Implements hook_entity_info_alter(). */ function MODULENAME_entity_info_alter(&$entity_info) { $entity_info['node']['view modes']['SYSTEM_VIEW_MODE_NAME'] = array( 'label' => t('New view mode'), 'custom settings' => TRUE, ); } |
Все типы публикаций тут же получат данный тип представления. И вы сможете настроить форматирование и набор полей для вывода в шаблон.
Заданное системное имя (то что вы напишите вместо SYSTEM_VIEW_MODE_NAME), будет присваиваться переменной $view_mode в шаблоне node.tpl.php.
Данная запись опубликована в 27.01.2018 17:04 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Ноябрь 8, 2016 г.
Можно использовать анализ адреса хранимый Drupal в $_GET['q'] и/или анализ частей адреса, получаемых функцией arg(N).
Оба варианта по сути делают одно и тоже - анализ внутреннего адреса, который для публикации имеет вид: node/%NID%.
Я использую функцию ...
Читать
Сентябрь 5, 2025 г.
Иногда в Drupal возникает ситуация: вы удаляете поле с типов сущностей (bundle), но оно не исчезает полностью из системы. UI говорит, что поле «используется», хотя на самом деле ни одна сущность его не использует. В этом случае поле остаётся в конфигурации ...
Читать
Март 9, 2017 г.
Чтобы программно изменить/задать ЧПУ публикации (или другого объекта) в Drupal, нужно определить три параметра - системный адрес объекта, новый псевдоним и код языка.
К примеру, для объекта node код может быть следующим:
[crayon-6a78ba9eca1a5482643305/] ...
Читать
Август 10, 2023 г.
Допустим, вы получаете следующие данные - заголовок, текст статьи, и теги. При этом данные поставляются на двух языках - 'ru' и 'en'. Вам требуется программно сохранить статью и её перевод.
Я полагаю, что уже активирован модуль Content Translation, ...
Читать