PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.5.13
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.5.13
1.19.8 1.19.7 1.19.6 1.19.5 trunk 1.10.0 1.10.1 1.10.2 1.10.3 1.10.4 1.11.0 1.12.0 1.13.0 1.14.0 1.15.0 1.15.1 1.15.2 1.15.3 1.16.0 1.16.1 1.16.2 1.16.3 1.16.4 1.16.5 1.16.6 1.16.7 1.16.8 1.17.0 1.17.6 1.17.7 1.17.8 1.17.9 1.18.0 1.18.1 1.18.2 1.18.3 1.18.4 1.18.5 1.18.6 1.18.7 1.18.8 1.18.9 1.19.0 1.19.1 1.19.2 1.19.3 1.19.4 1.3.19 1.3.20 1.4.0 1.4.1 1.5.0 1.5.1 1.5.10 1.5.11 1.5.12 1.5.13 1.5.14 1.5.15 1.5.16 1.5.17 1.5.18 1.5.19 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 1.6.0 1.6.1 1.7.0 1.7.1 1.8.0 1.8.1 1.8.3 1.9.0 1.9.1 1.9.2
nitropack / classes / Integration / Plugin / RC.php
nitropack / classes / Integration / Plugin Last commit date
AeliaCurrencySwitcher.php 4 years ago BeaverBuilder.php 4 years ago CF_Helper.php 4 years ago Cloudflare.php 4 years ago CookieNotice.php 4 years ago DownloadManager.php 4 years ago Ezoic.php 4 years ago FusionBuilder.php 4 years ago NginxHelper.php 4 years ago RC.php 4 years ago RocketNet_Helper.php 4 years ago ShortPixel.php 4 years ago ThriveTheme.php 4 years ago WPCacheHelper.php 4 years ago WPRocket.php 4 years ago Woocommerce.php 4 years ago WoocommerceCacheHandler.php 4 years ago
RC.php
84 lines
1 <?php
2
3 namespace NitroPack\Integration\Plugin;
4
5 class RC {
6 public static $modules = [//Key should match the value from nitropack_get_conflicting_plugins() assigned to the $clashingPlugins array
7 'WP-Rocket' => 'NitroPack\Integration\Plugin\WPRocket',
8 ];
9
10 public static function clearCache() {}
11
12 public static function dirHasContents($dir_path, $recursive_scan) {
13 $exclude_list = ['.', '..', '.htaccess', 'index.html'];
14 if (is_dir($dir_path)) {
15 $dir_path = nitropack_trailingslashit($dir_path);
16 $dir_contents = scandir($dir_path);
17 foreach ($dir_contents as $current_item) {
18 if (!in_array($current_item, $exclude_list)) {
19 $current_item_path = nitropack_trailingslashit($dir_path.$current_item);
20 if (is_dir($current_item_path)) {
21 if ($recursive_scan) {
22 if (self::dirHasContents($current_item_path, true)) return true;
23 } else {
24 return true;
25 }
26 } else {
27 return true;
28 }
29 }
30 }
31 }
32 return false;
33 }
34
35 public static function clearResidualCache($full_cache_path) {
36 try {
37 if (file_exists($full_cache_path)) {
38 if (is_dir($full_cache_path) && is_writable($full_cache_path)) {
39 $diskStorage = new \NitroPack\SDK\StorageDriver\Disk();
40 $diskStorage->deleteDir($full_cache_path);
41 return true;
42 }
43 return false;
44 }
45 } catch (\Exception $e) {
46 //TODO: Log the exception in a NP log
47 return false;
48 }
49 }
50
51 public static function getCurrentDomain() {
52 $url = new \NitroPack\Url(get_site_url());
53 return $url ? $url->getHost() : NULL;
54 }
55
56 public static function getWPCacheDir() {
57 $wpc_dir = nitropack_trailingslashit(defined('WP_CONTENT_DIR') ? WP_CONTENT_DIR : (defined('ABSPATH') ? ABSPATH . '/wp-content' : 'Undefined')) . 'cache';
58 if (file_exists($wpc_dir)) {
59 return $wpc_dir;
60 }
61 return false;
62 }
63
64 public static function isConflictingPluginActive($cp_name) {
65 $active_cp = nitropack_get_conflicting_plugins();
66 if (in_array($cp_name, $active_cp)) {
67 return true;
68 }
69 return false;
70 }
71
72 public static function detectThirdPartyCaches() {
73 $residual_cache = array();
74
75 foreach (self::$modules as $module_name => $module) {
76 if (!self::isConflictingPluginActive($module_name) && $module::hasResidualCache()) {
77 $residual_cache[] = $module_name;
78 }
79 }
80
81 return $residual_cache;
82 }
83 }
84