Чекбокс на странице оформления заказа

Здравствуйте. Пробую создать свой первый плагин. На странице оформления заказа я добавил чекбокс:

public function frontendCheckout($params) {
    $result = array (
        'shipping' => '<label><input type="checkbox">Чекбокс</label>'
    );
    return $result[$params['step']];
}

Как мне отследить, был ли отмечен клиентом чекбокс при оформлении заказа? Результат (в виде текста) необходимо вывести в карточке заказа в бекенде (хук backend_order).

Подскажите пожалуйста новичку. Я буду признателен абсолютно любой информации по этому вопросу.

1 ответ

  • 2
    info@ravencode.ru 10 марта 2018 12:29 #
    <input type="checkbox" name="mycheckbox">
    if (waRequest::post('mycheckbox')) {
       // действие
    }


    • +1
      Win/D Win/D 10 марта 2018 17:02 #

      Спасибо за ваш ответ. Я добавил атрибут name чекбоксу и функцию backendOrder в основной класс плагина:

      public function backendOrder($params) {
          if (waRequest::post('mycheckbox')) {
              return array(
      	    'info_section'  => '<p>Текст 1</p>',
      	);
          }
          else {
      	return array(
      	    'info_section'  => '<p>Текст 2</p>',
      	);
          }
      }

      К сожалению это не помогло - в хуке backend_order всегда выводится "Текст 2", вне зависимости от того, был отмечен чекбокс или нет. Значит либо содержимое чекбокса не запоминается, либо хуку передаются неправильные параметры. Если у вас есть возможность, посмотрите пожалуйста этот маленький кусок кода и подскажите, в чём может быть ошибка?

      • +1
        info@ravencode.ru info@ravencode.ru 10 марта 2018 17:46 #

        Естественно в бэкенд ничего не передается. В frontendCheckout и проверяй.

Добавить ответ

Чтобы добавить комментарий, зарегистрируйтесь или войдите