PluginProbe ʕ •ᴥ•ʔ
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization / 1.19.7
NitroPack – Performance, Page Speed & Cache Plugin for Core Web Vitals, CDN & Image Optimization v1.19.7
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
ACF.php 2 weeks ago AdvancedMathCaptcha.php 1 month ago AeliaCurrencySwitcher.php 11 months ago BeaverBuilder.php 1 year ago CF_Helper.php 5 months ago CURCY_MultiCurrency.php 1 year ago Cloudflare.php 5 months ago CommonHelpers.php 1 year ago CookieNotice.php 1 year ago DownloadManager.php 1 year ago Elementor.php 5 months ago Ezoic.php 1 year ago FusionBuilder.php 1 year ago GeoTargetingWP.php 1 year ago GravityForms.php 1 month ago JetPackNP.php 1 year ago MPG.php 11 months ago NginxHelper.php 1 year ago RC.php 11 months ago RankMathNP.php 1 year ago ShortPixel.php 1 year ago SquirrlySEO.php 1 year ago TheEventsCalendar.php 1 month ago ThriveTheme.php 1 year ago WCML.php 1 year ago WPBakeryNP.php 1 year ago WPCacheHelper.php 1 year ago WPForms.php 1 year ago WPML.php 2 weeks ago WPRocket.php 1 year ago WooCommerce.php 2 weeks ago WoocommerceCacheHandler.php 1 year ago YoastSEO.php 1 year ago
RC.php
90 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
13 public static function dirHasContents( $dir_path, $recursive_scan ) {
14 $exclude_list = [ '.', '..', '.htaccess', 'index.html' ];
15 if ( is_dir( $dir_path ) ) {
16 $dir_path = nitropack_trailingslashit( $dir_path );
17 $dir_contents = scandir( $dir_path );
18 foreach ( $dir_contents as $current_item ) {
19 if ( ! in_array( $current_item, $exclude_list ) ) {
20 $current_item_path = nitropack_trailingslashit( $dir_path . $current_item );
21 if ( is_dir( $current_item_path ) ) {
22 if ( $recursive_scan ) {
23 if ( self::dirHasContents( $current_item_path, true ) )
24 return true;
25 } else {
26 return true;
27 }
28 } else {
29 return true;
30 }
31 }
32 }
33 }
34 return false;
35 }
36
37 public static function clearResidualCache( $full_cache_path ) {
38 try {
39 if ( file_exists( $full_cache_path ) ) {
40 if ( is_dir( $full_cache_path ) && is_writable( $full_cache_path ) ) {
41 $diskStorage = new \NitroPack\SDK\StorageDriver\Disk();
42 $diskStorage->deleteDir( $full_cache_path );
43 return true;
44 }
45 return false;
46 }
47 } catch (\Exception $e) {
48 //TODO: Log the exception in a NP log
49 return false;
50 }
51 }
52
53 public static function getCurrentDomain() {
54 $url = new \NitroPack\Url\Url( get_site_url() );
55 return $url ? $url->getHost() : NULL;
56 }
57
58 public static function getWPCacheDir() {
59 $wpc_dir = nitropack_trailingslashit( defined( 'WP_CONTENT_DIR' ) ? WP_CONTENT_DIR : ( defined( 'ABSPATH' ) ? ABSPATH . '/wp-content' : 'Undefined' ) ) . 'cache';
60 if ( file_exists( $wpc_dir ) ) {
61 return $wpc_dir;
62 }
63 return false;
64 }
65
66 public static function isConflictingPluginActive( $cp_name ) {
67 $conflictingPlugins = \NitroPack\WordPress\ConflictingPlugins::getInstance();
68 $conflictingPlugins = $conflictingPlugins->nitropack_get_conflicting_plugins();
69 foreach ( $conflictingPlugins as $clashingPlugin ) {
70 if ( $clashingPlugin['name'] === $cp_name ) {
71 $cp_name = $clashingPlugin['plugin'];
72 return true;
73 }
74 }
75 return false;
76 }
77
78 public static function detectThirdPartyCaches() {
79 $residual_cache = array();
80
81 foreach ( self::$modules as $module_name => $module ) {
82 if ( ! self::isConflictingPluginActive( $module_name ) && $module::hasResidualCache() ) {
83 $residual_cache[] = $module_name;
84 }
85 }
86
87 return $residual_cache;
88 }
89 }
90