我试图让drupal_get_form('ccknode_node_form')工作,但没有打印。
我试过例如drupal_get_form('user_register'),这样可行。
我确定这是一个非常简单的问题,但我真的需要帮助
由于
/安德斯
答案 0 :(得分:2)
node_form
位于node.pages.inc
,这是您所缺少的。如果你添加
module_load_include('inc', 'node', 'node.pages');
应该修复它。
答案 1 :(得分:0)
我也遇到了drupal_get_form的问题,但下面的代码将返回html格式。问题区域可能无法调用正确的node_form。
function get_author_form() { //return node_form(NULL,NULL); //return drupal_get_form('author_form'); return author_ajax_form('author'); } function author_ajax_form($type) { global $user; module_load_include('inc', 'node', 'node.pages'); $types = node_get_types(); $type = isset($type) ? str_replace('-', '_', $type) : NULL; // If a node type has been specified, validate its existence. if (isset($types[$type]) && node_access('create', $type)) { // Initialize settings: $node = array('uid' => $user->uid, 'name' => (isset($user->name) ? $user->name : ''), 'type' => $type, 'language' => 'bbb','bbb' => 'TRUE'); $output = drupal_get_form($type .'_node_form', $node); } return $output; }
答案 2 :(得分:0)
嗨@ andersandersson666,
正如@googletorp所说,你需要在节点模块中包含node.pages,因为他们说:
module_load_include('inc', 'node', 'node.pages');
然后,您需要在Drupal 7中使用新函数来获取表单:
$theFormHTMLified = drupal_render(node_add("ccknode"));
现在您可以打印或返回$theFormHTMLified
。
希望有所帮助