modificación de campos de formulario de edición de un nodo en Drupal

Copiado de

http://carlos.rinconsanchez.com/como-modificar-el-formulario-de-un-tipo-de-contenido-en-drupal

Ponemos en el fichero template.php del theme lo siguiente:

function phptemplate_node_form($form) {   
    drupal_set_message("Reescribiendo el formulario de " . $form['#node']->type);
    if($form['#node']->type) {
        if(file_exists(path_to_theme() . '/forms/form-' . $form['#node']->type . '.tpl.php')) {
            drupal_set_message("Encuentra el fichero y lo reescribe");
            return _phptemplate_callback('forms/form-' . $form['#node']->type, array('form' => $form));
        }
        else {
            return theme_node_form($form);
        }
    }
 
 
}

Luego creamos un directorio forms en el directorio del theme y allí ponemos las plantillas de nuestros formularios con nombres que sean: form-nombre_del_tipo_de_contenido.tpl.php. Por ejemplo, si tenemos un tipo de contenido que se llama articulos el formulario se llamará form-articulos.tpl.php

Dentro de ese archivo tenemos la variable $form que es un array con cada uno de los campos del formulario. Lo esencial de ese archivo es lo siguiente:

<?php
print drupal_render($form);
?>
</code>
Esto imprime todo el formulario. Pero por ejemplo nosotros podemos imprimir primero un campo y luego imprimir el resto:

<?php
print '<div class="hola">' . drupal_render($form['trozo_del_formulario') . '</div>';
print drupal_render($form);
?>