По разным причинам нам может понадобится информация объекта текущей публикации (ноды) внутри модуля.Если код модуля вызывается из шаблона, то достаточно передать локальную переменную $node. Если такой возможности нет, то код ноды можно получить из текущего системного пути drupal, который хранится в переменной $_GET[‘q’].
|
|
if (preg_match('#^node/([\d]+)#', $_GET['q'], $m)) { $node = node_load($m[1]); //загружаем объект } |
Но этот метод оставляет ощущение, что мы обманули drupal и получили объект каким то окольным путем. Действительно есть и прямой путь — вызов функции menu_get_object();
|
|
$node = menu_get_object(); |
Функция работает как в drupal 6 так и в семерке.
Данная запись опубликована в 20.04.2014 14:18 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Январь 17, 2013 г.
Современные средства антиспам пытаются отличить человека от робота. При этом используются разного рода captcha, различные графические пазлы и т.п. Это может работать в ряде случаев, но ситуация такова, что на войну с captcha выходят специально обученные ...
Читать
Сентябрь 17, 2010 г.
Система меню в друпале сделана правильно и в большинстве случаев не требует установки каких то дополнительных модулей, чтобы получить тот результат, который требуется. И в данной статье мы не будем как то дополнять саму систему меню drupal-а.
В тоже ...
Читать
Декабрь 7, 2017 г.
Один раз начав работать с EntityFieldQuery, вы уже не захотите городить SQL запросы с джойнами таблиц полей сущностей. Что то сложное, возможно, сделать будет слишком трудно на этом конструкторе, но типовые выборки данных делать приятно, быстро и удобно. ...
Читать
Сентябрь 6, 2017 г.
В Drupal (7) новые флажки - права пользователей добавляются через hook модуля MODULENAME_permission.
В зацепке вы формируете массив описаний прав, который возвращаете при выходе из функции. Пример:
[crayon-69393f072f4d3109245990/]
После того, ...
Читать