为特定内容类型自定义创建内容表单

Bri*_*n G 8 drupal

如何为特定内容类型自定义创建内容表单.在这种情况下,我有一个CCK类型的产品,但每次我创建一个产品我使用4个字段名称,价格,图片和尺寸.

有没有办法减少创建内容表单只是有这些选项?这是Contemplate的作用吗?

cee*_*yoz 7

你会想要使用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;
  }
}
Run Code Online (Sandbox Code Playgroud)

Contemplate用于样式化节点视图,而不是节点形式.我建议反对它 - 使用node-nodetype.tpl.php文件要好得多.