Рейтинг:0

Как я могу получить доступ к данным о коммерции в $order->data[] или предоставить их модулю «Правила»?

флаг us

Следуя этому старому checkout_pane_example.module учебник, я создал пользовательскую панель проверки Drupal 7 Commerce. Это просто текстовое поле для сбора специальных инструкций по заказу от клиента.

функция checkout_pane_example_pane_checkout_form($form, &$form_state, $checkout_pane, $order) {

  $pane_form['псевдоним'] = массив(
    '#тип' => 'текстовое поле', 
    '#title' => t('Ваш никнейм'), 
    '#description' => t("Мы хотели бы называть вас по вашему нику."), 
    '#default_value' => !empty($order->data['псевдоним']) ? $order->data['псевдоним'] : '', 
    '#required' => ИСТИНА,
  );

  вернуть $pane_form;
}

Панель работает нормально. Все, что сохраняется в текстовой области, затем сохраняется в $order->data['псевдоним'].

Проблема в том, что мне нужен доступ к данным в Правилах, чтобы я мог прикрепить их к существующему электронному письму, которое отправляется по электронной почте о завершении заказа.

Как я могу получить доступ к этим данным или раскрыть их через модуль «Правила»?

apaderno avatar
флаг us
Ссылка возвращает ошибку *Сервер не найден*.
Рейтинг:0
флаг it

Вы не можете действительно разоблачить данные как таковой, но вы можете определить свое собственное свойство заказа через hook_entity_property_info() с пользовательским обратным вызовом, который возвращает конкретное значение из данные массив, который вы хотите.

Для примера взгляните на commerce_order_entity_property_info()определение mail_username имущество и связанные с ним commerce_order_get_properties() перезвонить.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.