Drupal表单编辑和条件字段

Drupal表单编辑和条件字段,drupal,forms,Drupal,Forms,我的template.php文件中包含以下内容: function theme098_theme() { return array( 'email_node_form' => array( 'arguments' => array('form' => NULL), ) ); } 而且 function theme098_email_node_form($form) { return drupal_render($form); }

我的template.php文件中包含以下内容:

function theme098_theme() {
  return array(
    'email_node_form' => array(
      'arguments' => array('form' => NULL),
    )
  );
}
而且

function theme098_email_node_form($form) {
    return drupal_render($form);
}
我已经排除了实际修改表单的代码,并对其进行了缩减,这样就不会发生任何修改。出现两个问题:

  • 物品的顺序(即重量)混乱。保存按钮位于顶部等。即使我试图通过设置权重来编辑表单,保存按钮仍显示在顶部
  • 真正的问题是:条件字段不起作用。出于某种原因,我认为这覆盖了其他模块应该做的事情?我不确定
  • 有人能解释一下吗?

    3件事

  • 在这种情况下,如果您想更改顺序或表单,您可能应该使用,而不是使用主题函数来更改它。保持表示和逻辑分离
  • 使用hook-theme定义主题函数时,应将其称为theme\u xxx,而不是themename\u/modulename\u
  • 模块(和可能的主题)有一个权重,它决定了它们与hook_*\u alter等函数一起运行的顺序。查看devel模块的安装文件,了解如何完成此操作
  • 这些事情中的一个或多个应该会帮助你