Я добавил настраиваемое поле на страницу оформления заказа в моем магазине Woocommerce. Поле - «Расположение ресторана». После того, как покупатель разместит заказ, моя цель - использовать поле «Местоположение ресторана», чтобы определить, на какой адрес электронной почты следует отправить подтверждение заказа.
Вот как я определил настраиваемое поле.
/////// Hook custom field in ///////
add_filter( 'woocommerce_checkout_fields', 'custom_checkout_fields' );
function custom_checkout_fields( $fields ) {
$fields['order']['restaurant_location'] = array(
'label' => __('Food options', 'woocommerce'),
'placeholder' => _x('', 'placeholder', 'woocommerce'),
'required' => true,
'clear' => false,
'type' => 'select',
'options' => array(
'no' => __('New Orleans', 'woocommerce' ),
'br' => __('Baton Rouge', 'woocommerce' )
)
);
return $fields;
}
Вот моя попытка фильтра электронной почты.
add_filter( 'woocommerce_email_recipient_new_order', 'gon_conditional_email_recipient', 10, 2 );
function gon_conditional_email_recipient( $recipient, $order ) {
$gon_order_data = $order->get_data();
$gon_restaurant_location = $gon_order_data['order']['restaurant_location'];
if ( $gon_restaurant_location == 'New Orleans' ) {
$recipient = '[email protected]';
return $recipient;
}
else if ( $gon_restaurant_location == 'Baton Rouge' ) {
$recipient = '[email protected]';
return $recipient;
}
return $recipient;
}
Фильтр электронной почты работает, то есть я могу получить электронное письмо для перехода на любой адрес, но я не могу правильно вставить переменную '$gon_restaurant_location
'. Любые идеи?
Спасибо,
pS