Theming Drupal 6.x Forms
-
Upload
emma-jane-hogbin -
Category
Technology
-
view
23.733 -
download
4
description
Transcript of Theming Drupal 6.x Forms
Theming Formsten steps to beautiful Drupal forms
emma jane [email protected]
About this talk● Matt Haughey (MetaFilter) once said, “Forms are tedious, confusing, often
poorly designed, and most people equate their use with things like paying taxes.” Forms are often overlooked by themers because the code seems complicated and the forms are good enough that the hassle of learning the code does not seem to be worth the trouble. But in Drupal 6 theming forms has gotten a WHOLE LOT EASIER!
● In this session you will learn how to make your forms look the way you want. We'll start by looking at some great helper modules you can install to make forms a little sleeker. And then we'll move on to the basics of using the developer module to identify, and theme, form components. We'll specifically look at altering CCK forms although the techniques will apply to other Drupal forms too!
● If you've had tears of joy or tears of frustration from theming forms in Drupal 6, please bring your experiences to share with others.
● This talk is based on content from Front End Drupal—a Drupal theming book published by Pearson Education. You can read it in draft format at http://safari.informit.com/9780137007752. The print publication should be available Spring 2009 ish.
documentation author
documentation team
Drupaldrupal.org/user/1773
Photo: morten.dkLegs: walkah
FAPI: Form Application Programming Interface
http://drupal.org/node/165104
1. Prepare2. Build3. Posted (“submit”)4. Validate5. Render6. Save
http://drupal.org/node/165104
Drupalspecific functions: drupal_
Modulespecific functions that you customize: hook_
Variables that you can set: #variable_name
http://drupal.org/node/165104
http://drupal.org/node/165104
Most of your attention will be spent at the “Render” part of this flow chart
Confusing?
http://flickr.com/photos/sherwinh/1354201451/
What modules can do!=
What themes can do
Custom Forms in 10 Easy Steps
What do you need to change?
1
add new fields, form layout, order of fields, hide the hard stuff, add visual cues, hide the secret stuff, make it prettier, make “required” more obvious, rich text editing,
changing some forms, changing all forms, changing display text, changing button text, the height
of a textarea, multiple page forms
Drupal 6 is slick.Make your changes from the GUI.
2
Use helper modules and themes.
3
Vertical tabs
Node form (Garland only)
4Make changes with CSS.
Make fun, and useful changes.
Make fun, and useful changes.
5Three golden rules to theming forms:1. http://api.drupal.org/api/group/themeable/6
2. Drupal stores form information in an array that can be manipulated with functions in #1.
3. Register unique forms to make unique changes.
6“Themer Info” in Developer
Module is your friend.
http://flickr.com/photos/7891209@N04/2951368555
http://flickr.com/photos/lecrapo/2124686412/
7Identify the unique ID for the form.
8In template.php create:
function THEMENAME_form_id ($form) {// stuff goes in here
}
Alternate(register your own form)
function THEMENAME_theme() {return array('your_specific_form_id' => array (
'arguments' => array ('form') => NULL),),
);}
9Reset (or unset) form valuesfunction THEMENAME_form_id ($form) {
// set your new form data/values/text/etc$form['buttons']['submit']['#value'] = “YARR”;$form['title']['#title'] = t('New label text');// put the values back into the Drupal formreturn (drupal_render($form));
}
10API.drupal.org is also your friend.
http://api.drupal.org/api/group/themeable/6http://api.drupal.org/api/file/developer/topics/forms_api_reference.html
Thank you!Thank [email protected]@hicktech.com
Read the draft text at: Read the draft text at: http://safari.oreilly.com/9780137007752http://safari.oreilly.com/9780137007752
Book release date: Spring 2009 ishBook release date: Spring 2009 ish