Drupal → Вывести информацию о выбранном способе оплаты на странице Review order

18.04.2015
/**
 * Implements hook_form_FORM_ID_alter(): commerce_checkout_form_review.
 */
function MODULENAME_form_commerce_checkout_form_review_alter(&$form, &$form_state) {
  $payment_method_instance = commerce_payment_method_instance_load($form_state['order']->data['payment_method']);

  $form['checkout_review']['review']['#data']['payment_method'] = array(
    'title' => 'Payment information',
    'data' => 'Payment method: ' . $payment_method_instance['title'],
  );
}

Результат:

Написанное актуально для
Commerce 1
Похожие записи

Комментарии

Игорь
18.08.2016, 11:27

А здесь

$order = commerce_order_load($order_id);

способ оплаты как-то можно получить?

Игорь
18.08.2016, 12:08

Так же можно получить:

$order = commerce_order_load($order_id);
dsm($order);
if( !empty($order->data['payment_method']) ) {
  $payment_method_instance = commerce_payment_method_instance_load($order->data['payment_method']);
  dsm($payment_method_instance);
  print 'Выбран способ оплаты: ' . $payment_method_instance['title'];
}
else {
  print 'Способ оплаты не выбран.';
}

Просто Яндекс.Касса - этот способ не сохраняется - $order->data['payment_method'] - нет этого поля вообще. Приходится программно самому сохранять.

Добавить комментарий