我已经成功地将我自己的表单(来自同一个模块)添加到我的自定义模板中,但现在我希望将分类添加术语表单(由 ubercart 我认为用于目录词汇中的产品类别)加载到我的模板中。
我的模块已经走到了这一步 - 文件名simpleadmin.module
/**
* @file
* A module to simplify the admin by replacing add/edit node pages
*/
function simpleadmin_menu() {
$items['admin/products/categories/add'] = array(
'title' => 'Add Category',
'page callback' => 'simpleadmin_category_add',
'access arguments' => array('access administration pages'),
'menu_name' => 'menu-store',
);
return $items;
}
function simpleadmin_category_add() {
module_load_include('inc', 'taxonomy', 'taxonomy.admin');
$output = drupal_get_form('taxonomy_form_term');
return theme('simpleadmin_category_add', array('categoryform' => $output));
}
function simpleadmin_theme() {
return array(
'simpleadmin_category_add' => array(
'template' => 'simpleadmin-template',
'variables' => array('categoryform' => NULL),
'render element' => 'form',
),
);
}
?>
至于主题文件本身 - 文件名simpleadmin-template.tpl.php
,目前非常简单,直到我将表单加载到其中:
<div>
This is the form template ABOVE the form
</div>
<?php
dpm($categoryform);
print drupal_render($categoryform);
?>
<div>
This is the form template BELOW the form
</div>
它告诉我它是
试图在 taxonomy_form_term() 中获取非对象的属性
并抛出一个错误。我应该使用node_add()
和传递nodetype
吗?