Załóżmy, że używasz pluginu „WooCommerce Subscriptions” lub innego pluginu subskrypcyjnego do cyklicznego rozliczania klientów. W takim wypadku zdecydowanie chcesz powstrzymać automatyczne, ponowne obciążanie klientów – w najgorszym wypadku wielokrotne, podczas testowania – z witryny staging.
Chcesz też zatrzymać wykonywanie innych zaplanowanych zdarzeń na witrynie staging, np. wysyłanie maili przypominających o wygaśnięciu licencji. Aby wyłączyć te automatyczne zdarzenia, musisz wyłączyć działający w tle action scheduler, używany przez WooCommerce.
Masz dwie opcje wyłączenia Subscriptions i action schedulera WooCommerce:
Wyłącz Action Scheduler WooCommerce dla Subscriptions za pomocą pluginu
Zainstaluj i aktywuj darmowy plugin Action Scheduler – Disable Default Runner.
Wyłącz Action Scheduler WooCommerce dla Subscriptions za pomocą kodu
Dodaj poniższy kod do functions.php lub osobnego pluginu:
function PREFIX_disable_action_scheduler() {
if ( class_exists( 'ActionScheduler' ) ) {
remove_action( 'action_scheduler_run_queue', array( ActionScheduler::runner(), 'run' ));
}
}
add_action( 'init', 'PREFIX_disable_action_scheduler', 10 );Uwaga: Zmień PREFIX na coś unikalnego.
Ten plugin/kod wyłącza wszystkie zdarzenia w bibliotece action scheduler WooCommerce wykorzystywane przez pluginy WooCommerce – zaplanowane zdarzenia, np. cykliczne płatności czy wysyłanie maili, zostaną wyłączone dla WooCommerce i wszystkich jego dodatków.
Więcej informacji znajdziesz w tym artykule.