Form field conditionnal display

In this snippet the text field mycustom is only displayed if the value of the select field myoptions is custom

  1. $options = drupal_map_assoc(array(100,200,'custom'));
  2. $form['myoptions'] = array(
  3. '#type' => 'select',
  4. '#options' => $options
  5. );
  6. $form['mycustom'] = array(
  7. '#type' => 'textfield',
  8. '#states' => array(
  9. 'visible' => array(
  10. // Jquery selector
  11. ':input[name="myoptions"]' => array('value' => 'custom'),
  12. ),
  13. ),
  14. );
  15. <drupal7>

Display errors - WSOD

The bootstrap override the values you could set to display error ad the reporting level. To be 100% sure everything is printed out when something fails in a blank screen (wsod), make index.php like this:

Properly render a field

Drupal offers a few (sometimes complicated...) solutions to output a field. Lets take an example with a date field.
To display the full rendered field: field_view_field()

Using once()

ensure ajax reload don't apply the behaviours for items already processed

Change the theme

Programmatically change the theme on runtime by implementing hook_custom_theme()

Manually clear caches

for views and panels

Add a Jquery ui library

get the library names to use in /misc/ui folder

Embed a custom page

Get the rendered output of a custom page created with page manager (ctools) module

Embed a mini panel

Get the html output of a mini-panel

alter / automatize the install process

in the .profile file of the install profile (here "mysnippet" profile)

Aegir: perform custom tasks after a new site is installed

in a custom module, in a file called mysnippet.drush.inc (keep in mind that the install process is handled by drush...)