hook_forms

5 core.php hook_forms()
6 core.php hook_forms($form_id, $args)
7 system.api.php hook_forms($form_id, $args)
8 system.api.php hook_forms($form_id, $args)

Map form_ids to builder functions.

This hook allows modules to build multiple forms from a single form "factory" function but each form will have a different form id for submission, validation, theming or alteration by other modules.

The callback arguments will be passed as parameters to the function. Callers of drupal_get_form() are also able to pass in parameters. These will be appended after those specified by hook_forms().

See node_forms() for an actual example of how multiple forms share a common building function.

Return value

An array keyed by form id with callbacks and optional, callback arguments.

Related topics

3 functions implement hook_forms()

1 invocation of hook_forms()

File

developer/hooks/core.php, line 466
These are the hooks that are invoked by the Drupal core.

Code

function hook_forms() {
  $forms['mymodule_first_form'] = array(
    'callback' => 'mymodule_form_builder', 
    'callback arguments' => array('some parameter'),
  );
  $forms['mymodule_second_form'] = array(
    'callback' => 'mymodule_form_builder',
  );
  return $forms;
}
Login or register to post comments