Как сделать способ доставки в Commerce shipping без цены (только текст)

Главные вкладки

Аватар пользователя D8i8m8a8 D8i8m8a8 8 марта 2013 в 13:28

Есть несколько способов доставки: Доставка1, Доставка2, Доставка3.
Нужно для Доставки1 - сделать фиксированную цену (ставку) - здесь проблем нет модуль Commerce Flat Rate.
А для Доставка2 и Доставка3 оставить только название доставки БЕЗ цены (цена равна 0 также не подходит).
Результат:
Доставка1 - 100руб.
Доставка2
Доставка3
Вопрос как добавить доставку без цены? Спасибо.

Комментарии

Аватар пользователя MytOff MytOff 28 августа 2013 в 16:48

Делается руками. Для способов доставки, у которых не будет цены оставляем "0", а потом этот ноль программно скрываем)

foreach ($form['commerce_shipping']['shipping_service'] as $key => $value) {
if (is_array($value) && isset($value['#title'])) {
$form['commerce_shipping']['shipping_service'][$key]['#title'] = str_replace(': 0 руб.', '', $form['commerce_shipping']['shipping_service'][$key]['#title']);
$output .= render($form['commerce_shipping']['shipping_service'][$key]);
}
}

Аватар пользователя otolaa otolaa 21 февраля 2014 в 5:03

"maximowich" wrote:
Привет. А куда этот код нужно вставить?

// вероятно
function MYMODULE_form_commerce_checkout_form_shipping_alter(&$form, &$form_state, $form_id) {
dpm($form);
}

Аватар пользователя Samaella Samaella 4 января 2016 в 2:31

Я использовала hook_commerce_shipping_service_rate_options_alter(&$options, $order) для перезаписи списка доставок на странице чекаута