0

希亚

我在自定义模块中使用以下内容为我的 BABY 内容类型自定义节点/添加/婴儿页面上的表单,但是当它是婴儿的节点/nid/编辑页面时,我想对此页面进行一些细微的修改内容类型。这可能吗?

<code>
<?php
function concept_theme() {
  return array(
    'baby_node_form' => array(
      'arguments' => array(
          'form' => NULL,
      ),
      'template' => 'templates/baby-node-form',
      'render element' => 'form',
    ),
  );
}
?>
</code>

感谢你

4

2 回答 2

2

在模板.php

function my_theme_name_theme($existing, $type, $theme, $path)
$hooks['baby_node_form']=array(
    'render element'=>'form',
    'template'      =>'templates/node--baby-edit',
);
return $hooks;
}

在节点--baby-edit.tpl.php

隐藏这样的字段:

<?php hide($form['title']); ?>

像这样操作字段:

<?php print render($form['field_image']); ?>

使用它来打印所有/其余内容:

<?php print drupal_render_children($form); ?>

清除缓存。

于 2013-04-26T03:49:09.777 回答
1

您可以通过实现此钩子来更改节点创建表单,类似于以下内容:

hook_form_alter(&$form, &$form_state, $form_id) {
  if($form_id == 'node_baby_form') {
     //do modification to form array $form
  }
}

或者,如果您的节点是由 hook_node_info 定义的(我认为不是这种情况),只需更改 hook_form() 中的元素

于 2013-04-22T13:34:01.470 回答