Можно использовать анализ адреса хранимый Drupal в $_GET[‘q’] и/или анализ частей адреса, получаемых функцией arg(N).
Оба варианта по сути делают одно и тоже — анализ внутреннего адреса, который для публикации имеет вид: node/%NID%.
Я использую функцию вида:
|
|
function currentNid() { if (arg(0) == 'node' && is_numeric(arg(1)) && arg(2) == '') { return arg(1) + 0; } return 0; } |
Она вернет код текущей публикации или ноль, если страница не является публикацией (или вы находитесь в редакторе публикации и т.п.).
Дальше можно загрузить объект ноды для работы с ним:
|
|
if ($nid = currentNid() && $node = node_load($nid)) { //в nid - код публикации //в node - объект публикации //... } |
Drupal 7
Данная запись опубликована в 08.11.2016 19:33 и размещена в рубрике Drupal.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Сентябрь 5, 2020 г.
Пример добавления обработчика (фильтра) текста в rich editor.
Требуется всего два шага для реализации нового фильтра:
имплементировать hook_filter_info(), ...
Читать
Январь 24, 2020 г.
Drupal надстраивает собственные разрешения на вывод ошибок, потому если вам необходим вывод ошибок на этапе разработки, то важно знать как разрешить их ...
Читать
Март 15, 2026 г.
Drupal 7 предлагает мощный Form API для построения форм. Однако при работе с HTML5‑атрибутами можно столкнуться с неожиданным ограничением: если вы попытаетесь задать тип поля number, email или tel стандартным способом, Drupal проигнорирует ваше значение ...
Читать
Май 24, 2019 г.
Пример кода, как программно реализовать создание параграфа (речь идет о модуле - paragraphs).
Обычно параграфы создаются редакторами через админку, но иногда требуется создать новый параграф с помощью кода, например, при импорте данных, структурных ...
Читать