Показывать div на странице корзины в зависимости от статуса заказа и времени суток. - PullRequest
1 голос
/ 25 февраля 2020

Я написал заявление, которое позволяет мне выводить DIV на странице оформления заказа, основываясь на том, есть ли в заказе товары с задержанным заказом (это работает), но я хочу, чтобы это также зависело от времени дня.

Вот мой код:

add_action( 'woocommerce_before_checkout_form', 'redpakket_items_checkout_notice' );
function redpakket_items_checkout_notice() {
    $found = false;

    foreach( WC()->cart->get_cart() as $cart_item ) {
        if( $cart_item['data']->is_on_backorder( $cart_item['quantity'] ) ) {
            $found = true;
            break;
        }
    }
    date_default_timezone_set("Europe/Amsterdam");
    if( in_array(date("H"), array("22", "23")) && in_array(date("N"), array("1", "2", "3", "4")) ||  $found) {
        echo '<div>Test</div>';
    }
}

Может кто-нибудь сказать мне, что я здесь не так делаю?

1 Ответ

0 голосов
/ 25 февраля 2020

Может быть, вы должны напечатать вывод? ваших переменных, чтобы увидеть, были ли они выполнены

При использовании || должно быть выполнено только 1 из условий

date_default_timezone_set("Europe/Amsterdam");

$hour = date("H");
$day_of_the_week = date("N");

echo 'f = ' . $found . '<br>';
echo 'h = ' . $hour . '<br>';
echo 'd = ' . $day_of_the_week . '<br>';

if( in_array($hour, array("12", "23")) && in_array($day_of_the_week, array("1", "2", "3", "4")) && $found ) {
    echo '<div>Test</div>';
} else {
    echo 'not';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...