Код: Выделить всё
function save_cash_custom_fields( $order ){
//If this order had been paid for with cash
if( $order->get_payment_method() === 'ms_cash' ){
//If the cash_paid_by field is set
if( isset( $_POST['cash_paid_by'] ) ){
$order->update_meta_data( 'cash_paid_by', sanitize_text_field( $_POST['cash_paid_by'] ) );
}
//If the cash_received_by field is set
if( isset( $_POST['cash_received_by'] ) ){
$order->update_meta_data( 'cash_received_by', sanitize_text_field( $_POST['cash_received_by'] ) );
}
}
add_action( 'woocommerce_before_pay_action', 'save_cash_custom_fields', 10, 1 );
Я прошел через функцию и вывел каждый шаг, и она всегда там. Никаких ошибок нигде не регистрируется, транзакция завершается правильно, просто эти метаданные не сохраняются.
Может ли кто-нибудь подсказать, почему это происходит с перебоями? Разве крючок не лучший вариант для этого?
Подробнее здесь: https://stackoverflow.com/questions/786 ... -meta-data
Мобильная версия