Я работаю над сайтом WordPress, используя плагины WooCommerce, WooCommerce Bookings и WooCommerce Депозиты. Сайт предназначен для сдачи дома для отдыха.
Я добавляю некоторый пользовательский код, чтобы электронное письмо с напоминанием об оплате баланса отправлялось за 14 дней до начала бронирования.
Я застрял, пытаясь получить дату (ы) начала бронирования из вновь размещенного заказа.
Это так близко, как у меня (с дополнительным выводом для отладки):
<code>add_action('woocommerce_thankyou', 'jjll_send_second_reminder_email');
function jjll_send_second_reminder_email( $order_id ) {
if ( ! $order_id )
return;
echo 'Checkpoint 1<br>';
echo '$order_id: ' . $order_id . '<br><br>';
$booking_data = new WC_Booking_Data_Store();
echo 'Checkpoint 2<br>';
echo '$booking_data:<br><pre>';
print_r($booking_data);
echo '
'; $ booking_ids = $ booking_data-> get_booking_ids_from_order_id ($ order_id); echo 'Checkpoint 3
'; echo '$ booking_ids:
';
print_r($booking_ids);
echo '
'; эхо «Контрольная точка 4
»; foreach ($ booking_ids как $ booking_id) {$ booking = get_wc_booking ($ booking_id); echo '$ booking:
';
print_r($booking);
echo '
'; $ start_date = $ booking-> get_start_date (); echo $ start_date. '
'; }}
, который выводит следующее в нижней части страницы с благодарностью:
Checkpoint 1
$order_id: 1214
Checkpoint 2
$booking_data:
WC_Booking_Data_Store Object
(
[booking_meta_key_to_props:WC_Booking_Data_Store:private] => Array
(
[_booking_all_day] => all_day
[_booking_cost] => cost
[_booking_customer_id] => customer_id
[_booking_order_item_id] => order_item_id
[_booking_parent_id] => parent_id
[_booking_persons] => person_counts
[_booking_product_id] => product_id
[_booking_resource_id] => resource_id
[_booking_start] => start
[_booking_end] => end
[_wc_bookings_gcalendar_event_id] => google_calendar_event_id
[_local_timezone] => local_timezone
)
[meta_type:protected] => post
[object_id_field_for_meta:protected] =>
[internal_meta_keys:protected] => Array
(
)
[must_exist_meta_keys:protected] => Array
(
)
)
Checkpoint 3
$booking_ids:
Array
(
)
Checkpoint 4
Так что я на самом деле не получил доступ к какой-либо брони data.
Спасибо в ожидании любой помощи.