Шаблон для field и fields во вьюсе для Drupal 8

Опубликовано 2016.09.12 в разделе Drupal.

Информацию о шаблонах из интерфейса вьюса успешно выпилили(надеюсь не навсегда). Чтобы сделать шаблон для поля - добавьте следующий хук:
  1. function template_preprocess_views_view_field(&$vars) {
  2. $field_id = $vars['field']->options['id'];
  3. $views_name = $vars['view']->id();
  4. $display_name = $vars['view']->getDisplay()->display['id'];
  5. $vars['theme_hook_original'] = 'views_view_field__' . $views_name . '__' . $display_name . '__' . $field_id;
  6. }
для полей
  1. function template_preprocess_views_view_fields(&$vars) {
  2. $views_name = $vars['view']->id();

Отделение представления от кода

Опубликовано 2012.07.04 в разделе Drupal.

Зачастую в Drupal 7 при написании собственных модулей необходимо отделить логику от представления. Перейдем сразу к практике и напишем простой модуль, который будет выводить три фиктивные ссылки на странице /mymodule. В CMS Drupal логика работы скриптов очень хорошо отделена от представления. Повсеместно используются .tpl.php шаблоны. Например для тех же страниц,блоков,нод и т.д.

Создание своей темы в Drupal

Опубликовано 2012.04.15 в разделе Drupal.

Создать тему с нуля можно. Но это очень большая и трудоёмкая задача. Поступать так стоит лишь в том случае, когда вам нужны какие-то специфичные потребности, что-то уникальное.

Самым простым и быстрым решением будет изменение любой существующей темы, которая больше подходит под ваши нужды.

Однако создать каркас темы, которая будет работать можно достаточно быстро. Для этого нам потребуется создать папку темы, info файл темы(как в модуле), и несколько шаблонов.

Способы темизации страниц в Drupal

Опубликовано 2012.04.15 в разделе Drupal.

Для темизации Drupal можно использовать как модули, так и вручную создавать файлы шаблонов, которые будут применяться в том или ином случае. Например можно создать шаблон для ноды определённого типа. Предположим что есть нода, которая содержит дополнительные поля. Наша задача упорядочить их. Давайте создадим новый тип ноды, назовём его «Анкета». Добавим к неё наше поле «Пол» ,поле «Имя» и прикрепим 3 изображения.

field_view_value

Опубликовано 2012.04.13 в разделе Drupal.

Есть в седьмой(а так же и в восьмой) версии Drupal такая замечательная функция, как field_view_value. Она подходит для отображения полей ноды и пользователей.Использовать её можно прямо в .tpl.php шаблонах. Например в материале типа "статья" у нас есть поле с названием "технология". Это обычное текстовое поле с машинным именем "field_technology" Теперь создаем шаблон для этого типа материала. Создаем файл с именем node--article.tpl.php. Теперь подтягиваем нужное нам поле.Пишем следующее:

Как узнать браузер на php. Кроссбраузерная верстка в Drupal.

Опубликовано 2011.11.23 в разделе Drupal.

Верстая сайт очень часто, точнее почти всегда, встаёт вопрос о кроссбраузерности верстки. Каждый браузер отображает верстку как ему заблагорассудится. Если нормальные браузеры ещё туда-сюда, так интернет эксплорер-это тихий ужас...кошмар веб разработчиков... А теперь по теме. Кроссбраузерность достигается так: Определяем браузер. Под каждый браузер пишем свои хаки. Определить браузер поможет следующая функция:
  1. function cb_get_browser()
  2. {
  3. $ua = $_SERVER['HTTP_USER_AGENT'];
  4.  
  5. if (stristr($ua, 'Opera')) return 'Opera';

Темизация шаблона views

Опубликовано 2011.11.22 в разделе Drupal.

Модуль Views-очень мощный инструмент разработчика Drupal. Он позволяет выводить различные поля материалов,связать их с автором, статистикой и многим другим. Можно также принимать аргументы прямо из адресной строки.

Тема админки для Drupal

Опубликовано 2011.11.15 в разделе Drupal.

Для административного интерфейса CMS Drupal можно выбрать тему, отличную от клиентской. Какой смысл плодить темы,спросите вы.Смысл есть. Находясь под учетной записью администратора-вам не нужно будет смотреть на всякие красивые меню, оформление и прочие прелести темизации. Достаточно будет функционала.. добавления материалов,редактирования меню и тому подобное. Темы эти также как и клиентские помещаются в папку sites/all/themes Потом,в зависимости от версии друпала заходим: admin/build/themes/select - для Drupal 6 admin/appearance для Drupal 7 Активируем(включаем) скаченные темы.

Установка темы Drupal

Опубликовано 2011.11.15 в разделе Drupal.

На друпал может быть установлено несколько тем одновременно.
Устанавливать их очень легко.Достаточно лишь скачать тему и распаковать её в директорию sites/all/themes
Таким образом в этой папке может быть несколько тем,например вот так.

Далее заходим в:
admin/build/themes/select - для Drupal 6
admin/appearance для Drupal 7

Отмечам нужные нам темы и выбираем тему по умолчанию.

Программный вывод блока

Опубликовано 2011.11.11 в разделе Drupal.

Вывести блок программно можно следующим образом: Вставить код можно прямо в шаблон. Редактирование блока будет доступно в админке управления блоками.
  1. $block = block_load('block', 10); //номер блока
  2. $output = drupal_render(_block_get_renderable_array(_block_render_blocks(array($block))));
  3. print $output;
Актуально для седьмой версии Drupal Для шестой будет несколько иначе:
  1. //$module_name - имя модуля
  2. //$number - номер блока
  3. $block = module_invoke($module_name, 'block', 'view', $number);
  4. echo $block['content'];
А если блок создан через вьюс: