Динамический блок в Друпале - PullRequest
0 голосов
/ 16 февраля 2012

У меня есть пара типов узлов, политика, квота, клиент и т. Д., И у каждого из них есть набор вызываемых действий, которые печатаются в меню ссылок, которые кодируются в файл шаблона.Я хочу поместить это меню в блок, чтобы можно было переместить его, поэтому блок должен быть динамическим.

Я собирался просто создать блок в модуле и в содержимом $ block [''] просто выведите массив действий ... но я не могу найти, как, во-первых, сделать эти переменные доступными для блока, а во-вторых, где это сделать.

Я посмотрел на функции предварительной обработки, но не могтолько выясните, что они предназначены для передачи переменных в шаблон, а не в блок.Есть ли у кого-нибудь какие-либо предложения здесь, в противном случае кажется, что блоки просто полностью изолированы?

Единственный другой способ, которым я думал сделать это, это получить идентификатор узла из arg () и загрузить его, затемоператор switch в зависимости от типа узла для добавления действий - но это кажется очень грязным и обходным способом, особенно при добавлении типов узлов в будущем.

1 Ответ

0 голосов
/ 16 февраля 2012

Вы, вероятно, хотите использовать панели для предоставления этих "панелей".

Вы можете визуализировать ваши узлы в «режиме полного содержимого» на панели на панели, и они автоматически получат ваши ссылки из tpl, и вы получите гораздо больше власти над их выборочным отображением, контекстом и отношением к другому контенту на стр.

Drupal 8 идет по пути панелей ctools, поэтому стоит потратить время на изучение. Пожалуйста, не стесняйтесь задавать любые ваши вопросы о

...