При помощи модуля [module=http://drupal.org/project/formblock] вывел форму создания определенного типа материалов на определенных страницах. Одним из полей создаваемого материала. является id материала, на странице которого заполняется данная форма и должно заполняться по умолчанию. Следующая конструкция результатов не дает, т.к. насколько понимаю берет id создаваемой ноды, а не ноды нахождения формы:
<?php
global $node;
return array(
0 => array('value' => $node -> id ),
);
?>
Комментарии
Не думаю, что возможно средствами Drupal. Запрашивайте средствами PHP последний НИД из таблицы node. Хотя зачем вам это, при условии, что в nid стоит AUTO_INCREMENT, не понятно.
PS
node_save
Parameters
$node: The $node object to be saved. If $node->nid is omitted (or $node->is_new is TRUE), a new node will be added.
PPS
Ой, видимо не понял вопрос. А Вы уверены, что это id создаваемой ноды?
думаю что да, т.к. при подобном запросе поле остается пустым.
а если не $node -> id, а $node -> nid?
<?php
global $node;
return array(
0 => array('value' => $node ->nid ),
);
?>
дает аналогичные результаты
Вообще мне трудно представить, зачем нужен nid, и что делает ваша конструкция. Ладно, если никто не ответит, как буду дома, поставлю formblock и посмотрю.
<?php if (arg(0) == 'node') return arg(1); ?>
решил проблему заменой id ноды на id автора, в моем случае это одно и тоже.
<?php
global $user;
return array(
0 => array('value' => $user->uid ),
);
?>