Как получить текущий id node в drupal из кода программы?

Можно использовать анализ адреса хранимый Drupal в $_GET[‘q’] и/или анализ частей адреса, получаемых функцией arg(N).

Оба варианта по сути делают одно и тоже — анализ внутреннего адреса, который для публикации имеет вид: node/%NID%.

Я использую функцию вида:

Она вернет код текущей публикации или ноль, если страница не является публикацией (или вы находитесь в редакторе публикации и т.п.).

Дальше можно загрузить объект ноды для работы с ним:

Мало букафф? Читайте есчо !

Меняем поведение корневого пункта меню bootstrap dropdown

Апрель 14, 2022 г.

В bootstrap корневой пункт меню с подпунктами (dropdown menu) не является активной ссылкой и лишь служит кнопкой для развертывания подпунктов. Тем временем ...

Читать

Как изменить длину поля (max length) после создания, сохраняя данные

Май 15, 2018 г.

Друпал не позволяет менять длину текстового поля после создания. Функция field_update_field также нам не поможет - будет сгенерирована соответствующая ошибка, что поле уже содержит данные и изменить его длину нельзя. Это можно проделать вручную, зная ...

Читать

Удаление nodequeue программно

Май 28, 2021 г.

Небольшой сниппет (snippet) по удалению сущностей nodequeue из кода. Может быть полезно при миграции данных. Удобно оперировать с машинным именем нод-кью, но функция удаления требует ID, потому код обычно обретает следующие формы: [crayon-69f2317b29980069695027/] ...

Читать

node_save в hook_node_insert

Апрель 13, 2021 г.

Рассмотрим технику того, как выполнить node_save во время hook_node_insert. Проблема в том, что во время данного хука мы еще находимся в транзакции и выполнить сохранение ноды прямо тут коде функции - не получится. Т.е. следующий код работать не ...

Читать
 

Комментарии к «Как получить текущий id node в drupal из кода программы?»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: