Надо было впихнуть форму добавления материала в блок.Я скопировал код через фаербаг и разместил его в созданном блоке.Насколько ето правильно и есть ли другие более рациональные варианты.
<?php // required for Drupal 6 module_load_include('inc', 'node', 'node.pages'); // which nodeform you want $node_type = 'YOURNODETYPE'; $form_id = $node_type . '_node_form'; // maybe add current users info global $user; // create a blank node $node = array( 'uid' => $user->uid, 'name' => (isset($user->name) ? $user->name : ''), 'type' => $node_type, ); // Invoke hook_nodapi and hook_node node_object_prepare($node); // Or you can also use an exiting node, for example // $node = node_load(123); // and the display the form: $output = drupal_get_form($form_id, $node); ?>
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 74.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 74.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 74.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 77.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 78.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 86.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/menu/menu.module on line 340.
Комментарии
Лопухнулся - конечно же не работает.Как же ето сделать ?
Воспользуйтесь поиском, в поиске это есть
Вчера пол дня искал но возможно просто не понял так как с друпал недавно.
Чтобы вывести форму, достаточно
<?php
// required for Drupal 6
module_load_include('inc', 'node', 'node.pages');
// which nodeform you want
$node_type = 'YOURNODETYPE';
$form_id = $node_type . '_node_form';
// maybe add current users info
global $user;
// create a blank node
$node = array(
'uid' => $user->uid,
'name' => (isset($user->name) ? $user->name : ''),
'type' => $node_type,
);
// Invoke hook_nodapi and hook_node
node_object_prepare($node);
// Or you can also use an exiting node, for example
// $node = node_load(123);
// and the display the form:
$output = drupal_get_form($form_id, $node);
?>
Спасибо.
Не работает. Вписал этот код в блок, указал свой тип материала, но выдает ошибку и всё.
Какую ошибку?
Вот текст ошибки:
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 74.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 74.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 74.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 77.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 78.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/node/node.pages.inc on line 86.
* warning: Attempt to assign property of non-object in /home/igor/www/test1.ru/modules/menu/menu.module on line 340.
Нашел откуда этот сниппет http://api.drupal.org/api/function/drupal_get_form/6
Этот сниппет просто вставлять в блок или ноду, или нужно еще где-то что-то править?
Нашел решение, модуль Form block
Может еще кому-то пригодится
Спасибо, то что нужно.
Версии постоянно меняются, т.н. сниппеты устаревают.
Для тех, кому в будущем понадобится - перед node_object_prepare($node); нужно воткнуть $node = (object) $node;