Если максимально упростить, то:
if ( date >= date2 && order_status == pending ) do
Если использовать это условие в woocommerce_order_status_changed
То условие с датой может быть не выполнено, т е мне нужно снова сделать проверку, вот вопрос в том, в какой момент это делать, init наверное не подходит, потому что слишком часто придётся к базе обращаться, зря нагружать сервер