По разным причинам нам может понадобится информация объекта текущей публикации (ноды) внутри модуля.Если код модуля вызывается из шаблона, то достаточно передать локальную переменную $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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 3, 2017 г.
Сейчас все пользуются внешней статистикой вроде метрики от Yandex. Зачем может понадобится внутренняя статистика?
Внутренняя статистика может пригодиться, ...
Читать
Март 1, 2024 г.
API миграции в Drupal позволяет "тащить" данные из разных источников, но работает это на базе контрибных модулей, т.е. не из коробки.
Например, модуль migrate_source_csv добавляет возможность добавить CSV файл как источник данных.
Создание каких ...
Читать
Сентябрь 6, 2017 г.
В Drupal (7) новые флажки - права пользователей добавляются через hook модуля MODULENAME_permission.
В зацепке вы формируете массив описаний прав, который возвращаете при выходе из функции. Пример:
[crayon-69b54c73bbd44447548621/]
После того, ...
Читать
Январь 9, 2024 г.
Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода.
В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию.
Сервис extension.list.module - реализует функции, связанные ...
Читать