Form declaration (from menu to submit)
Output a simple form, with validation and submit handlers
/* * Implementation of hook_menu() */ function mysnippet_menu() { 'title' => 'A basic form', 'description' => 'Example to create a form, validate and handle submitted values', 'page callback' => 'drupal_get_form', // we want a form 'access arguments' => array('basic permission'), //only users with this permission enabled have access to the form otherwise use 'access callback' => TRUE, ); return $items; } /* * Implementation of hook_form() */ function mysnippet_create_form($form, &$form_state) { //the documentation of the form API can be found here: http://drupal.org/node/1702548 '#type' => 'textfield', // we define a simple text field '#title' => 'What is your name?', '#description' => 'you can not enter here Drupal...', '#required' => TRUE, //we do not want an empty value ); return $form; } /* * Implementation of hook_form_validate() */ function mysnippet_create_form_validate($form, &$form_state) {//submitted values are hold in $form_state['values'] // dpm($form_state['values']) //to see them all if($form_state['values']['name']=='Drupal') { // we verify that the name is not Drupal form_set_error('name', 'You can not use Drupal here...'); // if yes we set an error on the field name } } /* * Implementation of hook_form_submit() */ function mysnippet_create_form_submit($form, &$form_state) { //we use variable_set to record our values in the database (table variable) //we display a confirmation message }
Static variable usage
there is a drupal wrapper for static variables: drupal_static()
Simple modal output with Ctools
Modal window provided by Ctools was designed to output forms but it can serve simple html as well.
Connect to an external db
Sometimes it is useful to use another database than the one installed by default by Drupal.
usefull image functions
how to get an image path or theme a preset image ?
override a default .tpl.php file in theme
To override a default .tpl.php file (to NOT use the page.tpl.php file for instance but page--mysnippet.tpl.php)
Programmaticaly insert block
to output a block created by a module in code, use:
View hooks order
The execution order of view hooks is important if you don't want your tweaks to be overridden
Drupal module list: lesser known
Huge list. I'm sure these Drupal modules will help in the future... if they are not currently used yet!! Always rely on (good...) modules built by the Drupal community than write your own!
Send an email
There is unfortunately no easy way to send an email in Drupal... and no way to send an html email using core functions!!
Firebug console error prevention
If you need to publish code that contains "console" calls (for instance console.log with firebug) and don't want javascript to be broken on browser that don't have console enabled, this function is useful:
- ‹ previous
- 3 of 5
- next ›