Я использую этот код, чтобы запретить пользователям создавать заказы в год, и он работает хорошо. Но я заметил, что если дата создания последнего заказа превышает 365 дней, кодирование принимает ее такой же, как и в этом году, поэтому пользователи, совершившие покупку более чем на 365 дней, не могут покупать снова. Может ли кто-нибудь просмотреть кодировку и внести необходимые изменения? Заранее спасибо!function new_order_allowed() {
if( ! ( is_cart() || is_checkout() ) ) return;
if ( is_user_logged_in() ) {
$user_id = get_current_user_id();
$last_order = wc_get_customer_last_order( $user_id );
if ( $last_order ) {
$date_created = $last_order->get_date_created()->format( 'z' ) + 1;
$current_time = current_time( 'z', true ) + 1;
$year_in_day = 365;
$days_passed = $current_time - $date_created;
if ( $days_passed < $year_in_day ) {
wc_add_notice( sprintf( 'ONLY ONE PURCHASE IS ALLOWED WITHIN 365 DAYS.
Your last order was %1$s days ago. Please try again when the 365 day period has been reached. ', $days_passed ), 'error' );
remove_action( 'woocommerce_proceed_to_checkout','woocommerce_button_proceed_to_checkout', 20);
}
}
}
}
add_action( 'woocommerce_check_cart_items', 'new_order_allowed' );
Подробнее здесь: https://stackoverflow.com/questions/787 ... ot-working