PluginProbe ʕ •ᴥ•ʔ
Independent Analytics – WordPress Analytics Plugin / 2.14.2
Independent Analytics – WordPress Analytics Plugin v2.14.2
2.15.0 2.14.10 trunk 1.1 1.10 1.10.1 1.11 1.12 1.13 1.14 1.15 1.16 1.17 1.17.1 1.17.2 1.17.3 1.17.4 1.18 1.18.1 1.19.0 1.19.1 1.2 1.20.0 1.21.0 1.22.0 1.22.1 1.23.0 1.23.1 1.24.0 1.24.1 1.25.0 1.25.1 1.26.0 1.27.0 1.28.0 1.28.1 1.28.2 1.28.3 1.29.0 1.3 1.30.0 1.30.1 1.4 1.5 1.6 1.7 1.8 1.9 2.0.0 2.0.1 2.1.4 2.1.5 2.1.6 2.10.0 2.10.1 2.10.2 2.10.3 2.10.4 2.11.0 2.11.1 2.11.10 2.11.2 2.11.3 2.11.4 2.11.5 2.11.6 2.11.7 2.11.8 2.11.9 2.12.0 2.12.1 2.12.2 2.13.1 2.13.2 2.13.5 2.13.6 2.14.0 2.14.1 2.14.2 2.14.4 2.14.6 2.14.7 2.14.8 2.14.9 2.2.0 2.2.1 2.3.1 2.3.2 2.4.2 2.4.3 2.5.0 2.5.1 2.6.0 2.6.1 2.6.2 2.6.3 2.6.4 2.7.0 2.7.1 2.7.2 2.7.3 2.8.2 2.8.3 2.8.4 2.8.5 2.8.6 2.8.7 2.8.8 2.8.9 2.9.2 2.9.3 2.9.4 2.9.5 2.9.6 2.9.7
independent-analytics / IAWP / Cron / Unscheduler.php
independent-analytics / IAWP / Cron Last commit date
Unscheduler.php 9 months ago
Unscheduler.php
39 lines
1 <?php
2
3 namespace IAWP\Cron;
4
5 use IAWPSCOPED\Illuminate\Support\Collection;
6 use IAWPSCOPED\Illuminate\Support\Str;
7 /** @internal */
8 class Unscheduler
9 {
10 /**
11 * Unschedule all cron events for Independent Analytics
12 *
13 * @return void
14 */
15 public static function unschedule_all_events()
16 {
17 $prefix = 'iawp_';
18 $raw_cron_data = \get_option('cron');
19 if (!\is_array($raw_cron_data)) {
20 return;
21 }
22 $event_names = Collection::make();
23 foreach ($raw_cron_data as $timestamp => $events) {
24 if (!\is_int($timestamp) || !\is_array($events)) {
25 continue;
26 }
27 foreach ($events as $name => $details) {
28 if (!Str::startsWith($name, $prefix)) {
29 continue;
30 }
31 $event_names->push($name);
32 }
33 }
34 $event_names->unique()->values()->each(function ($event_name) {
35 \wp_unschedule_hook($event_name);
36 });
37 }
38 }
39