如何为特定内容类型自定义创建内容表单.在这种情况下,我有一个CCK类型的产品,但每次我创建一个产品我使用4个字段名称,价格,图片和尺寸.
有没有办法减少创建内容表单只是有这些选项?这是Contemplate的作用吗?
你会想要使用hook_form_alter钩子.
在Drupal 6中,我使用它来隐藏节点编辑/添加表单中的大多数无关的东西.
function mymodule_form_alter(&$form, $form_state, $form_id) { // hide extraneous options in the node form for nodetype nodes if($form_id == 'nodetype_node_form') { $form['path']['#access'] = FALSE; $form['menu']['#access'] = FALSE; $form['author']['#access'] = FALSE; $form['options']['#access'] = FALSE; $form['comment_settings']['#access'] = FALSE; $form['revision_information']['#access'] = FALSE; } }
Contemplate用于样式化节点视图,而不是节点形式.我建议反对它 - 使用node-nodetype.tpl.php文件要好得多.