挂钩drupal商业优惠券窗格

时间:2015-10-19 16:56:49

标签: drupal drupal-7 drupal-commerce

我尝试对Drupal Commerce优惠券窗格进行一些小改动(为其添加一个div)。我试图挂钩这个功能:

    function commerce_coupon_pane_checkout_form($form, &$form_state, $checkout_pane, $order) {
              // Allow to replace pane content with ajax calls.
              $pane_form = array(
                '#prefix' => '<div id="commerce-checkout-coupon-ajax-wrapper">',
                '#suffix' => '</div>',
              );
        (..)
}

为此,我在我的模块中创建了一个函数:

function <mymodule>_form_commerce_coupon_pane_alter(&$form, &$form_state, $form_id) {
        $form['#prefix'] = '<div id="collapsable-panel"><p>You have coupon? Add it here.</p>' + $form['#prefix'];
        $form['#suffix'] = $form['#suffix'] + '</div>';
    }

但它不起作用。我认为应该有其他方法来挂钩结账窗格,但我无法弄清楚如何做到这一点。

1 个答案:

答案 0 :(得分:0)

您的意图是正确的,但表单的ID不正确。它应该是这样的function <mymodule>_form_commerce_coupon_pane_checkout_alter

如果它仍然不起作用,可以尝试以下方法:

function YOURMODULE_form_alter(&$form, &$form_state, $form_id) {
    if($form_id == "YOU NEED TO DISCOVER THE FORM ID") {
        // Do whatever you want here
    }
}

不要忘记清除所有缓存!