Úprava formulářů

V používaném tématu vzhledu vytvořte (upravte) soubor template.php, do kterého vložte požadovanou funkci nalezenou přímo v Drupalu nebo na api.drupal.org:

  • /**
    * Implements HOOK_form_alter()
    */
    function MYTHEMENAME_form_alter(&$form, &$form_state, $form_id) {
    //kpr(); // require Devel modul //var_dump($form); //echo $form_id .", "; }
  • nebo ještě lépe
  • /**
    * Implements HOOK_form_FORM_ID_alter()
    */
    function MYTHEMENAME_form_search_block_form_alter(&$form, &$form_state, $form_id) {
    //kpr(); // require Devel modul
    //var_dump($form); //kpr(); // require Devel modul
    }

Např. modifikace atributů a textu tlačítek:

/**
* Implements HOOK_form_alter()
*/
function MYTHEMENAME_form_alter(&$form, &$form_state, $form_id) {
//var_dump($form); // submit input
if(isset($form['product_id']) && $form_id == 'commerce_cart_add_to_cart_form_' . $form['product_id']['#value']) {
$form['submit']['#attributes']['title'] = t('Add to Wishlist');
}

// 1. step of checkout
if($form_id == 'views_form_commerce_cart_form_default') {
$form['actions']['continue_shopping']['#value'] = t('Continue');
$form['actions']['submit']['#value'] = t('Update demand');
$form['actions']['checkout']['#value'] = t('Send demand');
}

// 2. step of checkout
if($form_id == 'commerce_checkout_form_checkout') {
$form['buttons']['continue']['#value'] = t('Send demand');
}
}