Можно использовать анализ адреса хранимый 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.
Вы можете перейти в конец страницы и оставить ваш комментарий.
Мало букафф? Читайте есчо !
Март 25, 2019 г.
Блок меню core модуля menu позволяет вывести всю иерархию меню полностью, но иногда требуется показать только 1-2 верхних уровня. Посмотрим как организовать такой вывод.
Drupal в модуле menu использует функцию menu_tree('ИМЯ МЕНЮ'), чтобы рендерить ...
Читать
Май 31, 2019 г.
С комментариями в Drupal во все времена было на мой взгляд - всё сложно. В 7ке сущность стала частью конструктора, стало веселее, но общий шаблон комментариев так и остался "костью в горле" у многих программистов.
В настройках типа публикации вы ...
Читать
Март 22, 2021 г.
Проявляется как не прогружающиеся wysiwyg редактор (ckeditor, например) или элементы поля, обрабатываемые модулем media, при добавлении параграфа (entity модуля parapraphs). Это по-крайней мере два примера с которыми я лично сам сталкивался.
Характерно, ...
Читать
Апрель 8, 2020 г.
Популярный административный модуль admin_menu, собирает всё самое нужное и важное для управления сайтом. И хотя в 7 версии в ядре вы найдете модуль tool, обладающий похожим функционалом, ему не удалось заменить admin_menu.
Далее, разберем код, добавляющий ...
Читать