Как получить и обновить заказ мета? - PullRequest
0 голосов
/ 18 января 2019

Я пытаюсь добавить мета Ready_by к заказу, беря время, установленное Order Due Date, и вычитая из него час. Это значение Order Due Date устанавливается с помощью плагина Дата доставки заказа Pro , который добавляет календарный указатель даты / времени к оформлению заказа.

Я пробовал между хуками woocommerce_checkout_create_order и woocommerce_thankyou и не мог заставить его работать.

Вот код, который у меня есть в файле functions.php:

// Assign default ready by time by deducting an hour from the delivery due time
add_action('woocommerce_thankyou', 'define_default_ready_by_time', 10, 1);

function define_default_ready_by_time( $order_id ) {
  $order = wc_get_order($order_id);

  $order_due_time = get_post_meta($order, 'Order Due Date', true);
  $ready_by_default = date('H:i',strtotime('-1 hour',strtotime(date('Y-m-d H:i:s',strtotime(str_replace('/','-',$order_due_time))))));

  $order->update_meta_data( 'Ready_by', $ready_by_default);
}

Если кто-нибудь сможет пролить свет на это, это будет очень цениться. Спасибо!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...