Я пытаюсь добавить даты продажи woocommerce при публикации нового продукта (черновик для публикации).
Весь мой код работает вплоть до моего комментария, и все переменные выводятся без ошибок, но когдаЯ проверяю метаданные поста и админа, даты не добавляются. Ничего в get_post_meta и ничего на экране редактирования продукта.
add_action('transition_post_status', array($this, 'knp_add_sale_date'), 20, 3);
public function knp_add_sale_date($new, $old, $post){
$meta = get_post_meta($post->ID);
$submissiondata = $this->get_submission($meta['submissionID'][0]);
$submissiondata['live_status'] = $new;
//If the post is a new product published from draft.
if ($old == 'draft' && $new == 'publish' && $post->post_type == 'product') {
//If there is a sale on then set the sale dates
if (isset($meta['_sale_price'][0])) {
$startdatedate = new DateTime('now');
$startdateformat = $startdatedate->format('Y-m-d');
$enddate = date('Y-m-d', strtotime($startdateformat. ' + 15 days'));
$finishdate = new DateTime($enddate);
//Everything works till here
update_post_meta($post->ID, '_sale_price_dates_from', $startdatedate->getTimestamp());
update_post_meta($post->ID, '_sale_price_dates_to', $finishdate->getTimestamp());
}
$update = $this->post_submission($submissiondata, $meta['submissionID'][0], 'live');
}
}
TIA для любых предложений или помощи.