WooCommerce получает адрес электронной почты и номер телефона на странице оформления заказа при изменении соответствующиPhp

Кемеровские программисты php общаются здесь
Anonymous
WooCommerce получает адрес электронной почты и номер телефона на странице оформления заказа при изменении соответствующи

Сообщение Anonymous »

Я создаю плагин, который будет скрывать определенный способ оплаты на основе адреса электронной почты или номера телефона, введенного клиентом в форме оформления заказа.
Поэтому сначала я использовал это JS-код для отслеживания onChange этих двух полей:

Код: Выделить всё

$(document).ready(function () {
if ($('form.woocommerce-checkout').length) {
$('#billing_phone_field, #billing_email_field').on('change', function () {
$('body').trigger('update_checkout');
});
}
});
Затем я использовал перехватчик, подходящий для управления массивом способов оплаты, то есть woocommerce_available_pay_gateways, следующим образом:

Код: Выделить всё

public function update_payment_methods_based_on_user_input( $available_gateways ) {

if ( is_admin() ) return $available_gateways;
if ( ! is_checkout() ) return $available_gateways;

$wp_session = isset( WC()->session ) && WC()->session->has_session() ? WC()->session : null;

if ( is_a( $wp_session, 'WC_Session_Handler' ) ) {
$cust_session = $wp_session->get( 'customer' );

file_put_contents( ABSPATH . '/wp-content/cust_session.txt', print_r( $cust_session, true ) );
}

return $available_gateways;

}
Я надеялся получить адрес электронной почты и номер телефона в файле cust_session.txt, чтобы сначала проверить, существуют ли они в сеансе... Но нет, поскольку значения массива электронной почты и телефона пусты.
Я делаю что-то не так? Как мне получить эти два поля, если не через сеанс?

Подробнее здесь: https://stackoverflow.com/questions/785 ... ange-of-th

Вернуться в «Php»