Gracias por visitar DrupalPicchu! Por favor, lea nuestra revisión!

No te desesperes: hook_form_alter versus Field API

barraponto's picture
Track: 
Community Summit
Motivation: 

Partimos de un problema comun: tirarle hook_form_alter a un form que viene desde Field API. Y desde ahi estudiamos como funciona la Form API con sus fases de process, after_build y render y también como funciona la Field API con sus widgets. Parte de una serie de charlas avanzadas sobre las APIs de Drupal.

Brief Description: 

Los site builders de Drupal respiran Field UI y Views. Los programadores, que aumentan las funcionalidades disponibles en módulos compartidos, tienen en hook_form_alter su mejor amigo. Pero cuando es hora de usar hook_form_alter en campos criados con Field UI, todos sufren! Hay quienes consigan arreglarlo sin saber como, leyendo tutoriales. Otros se desesperan y llenan las comunidades de preguntas. Sí, es difícil, pero realizarlo es conceptualmente interessante y te hace más íntimo de algunas de las APIs más importantes de Drupal: Form API y Field API.

Form API es una de las joyas de Drupal, transformando la aventura llena de peligros de los formularios web en un paseo tranquilo por el campo. Dispone de muy buenas prácticas como padrón, toma varias medidas de seguridad y facilita cosas complicadas como formularios con más de un paso (multistep) o con atualización dinámica con AJAX. Es un amor <3

Field API es otra joya de Drupal que disponibiliza campos a las entidades del sistema, sean usuarios, nodos y lo que tengas en tu proyecto. Parte de Field API se responsabiliza por ofrecer interfaces para editar los campos: las widgets. En general cada tipo de campo (data, por ejemplo) tiene unos widgets disponibles (input de data de HTML5 o input de texto con javascript de datepicker) y es fácil adicionar nuevas widgets. Es un recurso que nosotros, los Drupalistas, lo tenemos garantizado. Seria muy costoso hacerlo desde cero, muchos de nosotros ni sabemos como era en antes, ni tenemos por qué saber :D

En esta charla veremos como Field API utiliza a Form API y porque no es tán simples tirarle un hook_form_alter (pero tambien veremos como hacerlo). Y encima como aprovechar el uso avanzado de Form API para outras cosas, como lo hacemos en el módulo Form API Validation.

Speaker's Biography: 
Capi Etheriel es un colaborador activo del proyecto Drupal, con patches dispersos entre Drupal Core y diversos módulos y temas, incluso los populares Zen, Tao e Adaptive Themes. Activista de tecnologias livres y transparencia en el gobierno, se esfuerza en hacer crecer a la comunidade, procurando orientar a los nuevos membros en la netiqueta de los proyectos. Apasionado por la interfaz de la Web y los secretos de las lineas de comando, se dedica hoy a cazar recompensas en proyectos compartidos, dar clases de programación y hacer juegos de cartas y tableros.
Language: 
Español
Audience: 
Advanced