По разным причинам нам может понадобится информация объекта текущей публикации (ноды) внутри модуля.Если код модуля вызывается из шаблона, то достаточно передать локальную переменную $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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Июнь 23, 2011 г.
Рассмотрим случай, когда нужно предварительно заполнить поле (ряд полей) формы при переходе на страницу с этой формой в Drupal. Данные для инициализации передаём как часть uri (т.е. метод GET).
Подход проверен для Drupal 7.
[crayon-6aae0a4c06268273914504/]
Читать
Январь 9, 2024 г.
Функция считается устаревшей, начиная с версии ядра 9.3, в 10-й версии функция удалена из кода.
В новом API нужно воспользоваться одним из сервисов ядра, которые реализуют нужную функцию.
Сервис extension.list.module - реализует функции, связанные ...
Читать
Сентябрь 24, 2017 г.
Препроцессоры Less и Sass, на мой взгляд, это какая то переходная ступень. Со временем, я надеюсь, функционал расширений будет реализован в CSS. Но ждать ...
Читать
Апрель 7, 2024 г.
При объявлении библиотек вы можете подключать не только локальные, но и внешние файлы.
Для этого нужно указать тип библиотеки - external. Например:
[crayon-6aae0a4c0673d595370557/]
О полном списке допустимых атрибутах читайте в документации.
Читать