[РЕШЕНО] AdaptiveTheme: новый регион в node.tpl.php... как?

Главные вкладки

Аватар пользователя vkapas vkapas 25 июня 2015 в 11:45

Не могу добавить новый регион в node.tpl.php, конкретно — между текстом ноды и комментариями. Использую AdaptiveTheme.

Насколько я понял, в AdaptiveTheme новые регионы можно создавать только через Gpanels (или Panels+DS, — но устанавливать 2 модуля ради одного региона мне хочется ещё меньше).

Так вот, и инструкция по Gpanels и, например, это мини-руководство, начинаются с того, что регион нужно добавить в page.tpl.php, скопировав соответствующий код из adaptivetheme/at_core/layouts/gpanels/%нужный_шаблон%.php.

Проблема в том, что регион мне нужен не в page.tpl.php, а именно в node.tpl.php — через темизацию page блок между содержимым страницы и комментариями никак не добавишь. Я пробовал пройти все шаги из adaptivethemes.com/documentation/using-gpanels — новый регион появляется в месте, определённом в шаблоне page; если же убрать код из page, тогда регион вообще не появляется.

Кто сталкивался с добавлением регионов в AdaptiveTheme — поделитесь, пжста, опытом, объясните на пальцах, как пройти этот квест.

Комментарии

Аватар пользователя vkapas vkapas 25 июня 2015 в 15:49

VasyOK wrote:
В page.tpl.php и .info как это делается.

Для вас https://www.drupal.org/project/field_group[/quote]

1. Да, я в курсе про темизацию page.tpl.php и делал это уже не раз. И в AT это тоже получилось (через Gpanels). Вопрос в том, как в AdaptiveTheme впихнуть новый регион в node.tpl.php. Стандартный метод в этой теме не работает.

2. Field Group? Это разве не про поля? Мне нужен новый регион, поля здесь не при чём.

Аватар пользователя vkapas vkapas 26 июня 2015 в 8:59

chimir wrote:
http://drupalace.ru/lesson/dobavlyaem-region-v-nodu-ili-kommentariy[/quote]

Что ж никто не читает-то, что я пишу.. Smile Спасибо за попытку помочь, но.
Комментарием выше я сам привёл эту же ссылку, написав, что такой метод в AdaptiveTheme не работает из-за особенностей темы. Работает только метод с Gpanels или Panels+DS.

Аватар пользователя Orion76 Orion76 26 июня 2015 в 10:29

"vkapas" wrote:
что такой метод в AdaptiveTheme не работает из-за особенностей темы. Работает только метод с Gpanels или Panels+DS.

Из-за особенностей Drupal.

Все стандартные регионы Drupal содержаться в page.tpl.php,
а node.tpl.php "вложен" в регион "content" шаблона page.tpl.php

Поэтому добавить регион в node.tpl.php так же как в page.tpl.php неполучиться.

Поэтому Вам и написали про поля.

В node.tpl.php более-менее стандартно можно добавить только поле.
Или в preprocess-хуке ноды добавить переменную с необходимым контентом, и вывести ее в node.tpl.php.

Аватар пользователя chimir chimir 26 июня 2015 в 16:31

"vkapas" wrote:
такой метод в AdaptiveTheme не работает из-за особенностей темы.

Все прекрасно работает, видимо Вы что-то делаете не так. проверил на субтеме AdaptiveTheme

вот регион

вот блок между сожержимым и комментариями

Аватар пользователя vkapas vkapas 26 июня 2015 в 20:29

Спасибо, orion76 и chimir.

Вы правы, всё работает. Ошибка была в функции preprocess_node, которую я зачем-то назвал adaptivetheme_%название_моей_подтемы%_preprocess_node. Убрал из неё adaptivetheme_, и всё заработало.