PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backups, Restore, Migration & Clone / 4.11.1
WP STAGING – WordPress Backups, Restore, Migration & Clone v4.11.1
4.11.1 4.11.0 4.10.0 4.9.5 4.9.4 4.9.3 4.9.2 4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Framework / Analytics / AnalyticsCleanup.php
wp-staging / Framework / Analytics Last commit date
Actions 1 week ago AnalyticsCleanup.php 1 week ago AnalyticsConsent.php 1 week ago AnalyticsEventDto.php 1 week ago AnalyticsEventWithTimeDto.php 1 week ago AnalyticsGenericEventHandler.php 1 week ago AnalyticsSender.php 1 week ago ErrorCode.php 1 week ago WithAnalyticsAPI.php 1 week ago WithAnalyticsSiteInfo.php 1 week ago
AnalyticsCleanup.php
32 lines
1 <?php
2
3 namespace WPStaging\Framework\Analytics;
4
5 class AnalyticsCleanup
6 {
7 public function cleanupOldAnalytics()
8 {
9 global $wpdb;
10
11 $results = $wpdb->get_results("SELECT `option_id`, `option_name` FROM $wpdb->options WHERE `option_name` LIKE 'wpstg_analytics_event_%' ORDER BY `option_id` ASC");
12
13
14 if (count($results) < 100) {
15 return;
16 }
17
18
19 $idsToDelete = array_map(function ($option) {
20 return $option->option_id;
21 }, array_slice($results, 0, 20));
22
23 $idsToDelete = implode(',', $idsToDelete);
24
25 $deleteResult = $wpdb->query("DELETE FROM $wpdb->options WHERE `option_id` IN ($idsToDelete)");
26
27 if ($deleteResult != 20) {
28 \WPStaging\functions\debug_log(sprintf('WPSTAGING Analytics Cleanup tried to delete 20 events but couldn\'t. wpdb last query: %s wpdb last error: %s', $wpdb->last_query, $wpdb->last_error));
29 }
30 }
31 }
32