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);
?>

Enviar un comentario nuevo

El contenido de este campo se mantiene como privado y no se muestra públicamente.
  • Las direcciones de las páginas web y las de correo se convierten en enlaces automáticamente.
  • Allowed HTML tags: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Saltos automáticos de líneas y de párrafos.

Más información sobre opciones de formato

CAPTCHA
This question is for testing whether you are a human visitor and to prevent automated spam submissions.
Image CAPTCHA
Enter the characters (without spaces) shown in the image.