@@ -1,5 +1,5 @@ discard block |
||
| 1 | 1 | <?php |
| 2 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
| 2 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
| 3 | 3 | |
| 4 | 4 | class autoptimizeCache { |
| 5 | 5 | private $filename; |
@@ -7,14 +7,14 @@ discard block |
||
| 7 | 7 | private $cachedir; |
| 8 | 8 | private $delayed; |
| 9 | 9 | |
| 10 | - public function __construct($md5,$ext='php') { |
|
| 10 | + public function __construct($md5, $ext = 'php') { |
|
| 11 | 11 | $this->cachedir = AUTOPTIMIZE_CACHE_DIR; |
| 12 | 12 | $this->delayed = AUTOPTIMIZE_CACHE_DELAY; |
| 13 | 13 | $this->nogzip = AUTOPTIMIZE_CACHE_NOGZIP; |
| 14 | - if($this->nogzip == false) { |
|
| 14 | + if ($this->nogzip == false) { |
|
| 15 | 15 | $this->filename = AUTOPTIMIZE_CACHEFILE_PREFIX.$md5.'.php'; |
| 16 | 16 | } else { |
| 17 | - if (in_array($ext, array("js","css"))) { |
|
| 17 | + if (in_array($ext, array("js", "css"))) { |
|
| 18 | 18 | $this->filename = $ext.'/'.AUTOPTIMIZE_CACHEFILE_PREFIX.$md5.'.'.$ext; |
| 19 | 19 | } else { |
| 20 | 20 | $this->filename = AUTOPTIMIZE_CACHEFILE_PREFIX.$md5.'.'.$ext; |
@@ -23,7 +23,7 @@ discard block |
||
| 23 | 23 | } |
| 24 | 24 | |
| 25 | 25 | public function check() { |
| 26 | - if(!file_exists($this->cachedir.$this->filename)) { |
|
| 26 | + if (!file_exists($this->cachedir.$this->filename)) { |
|
| 27 | 27 | // No cached file, sorry |
| 28 | 28 | return false; |
| 29 | 29 | } |
@@ -32,8 +32,8 @@ discard block |
||
| 32 | 32 | } |
| 33 | 33 | |
| 34 | 34 | public function retrieve() { |
| 35 | - if($this->check()) { |
|
| 36 | - if($this->nogzip == false) { |
|
| 35 | + if ($this->check()) { |
|
| 36 | + if ($this->nogzip == false) { |
|
| 37 | 37 | return file_get_contents($this->cachedir.$this->filename.'.none'); |
| 38 | 38 | } else { |
| 39 | 39 | return file_get_contents($this->cachedir.$this->filename); |
@@ -42,48 +42,48 @@ discard block |
||
| 42 | 42 | return false; |
| 43 | 43 | } |
| 44 | 44 | |
| 45 | - public function cache($code,$mime) { |
|
| 46 | - if($this->nogzip == false) { |
|
| 45 | + public function cache($code, $mime) { |
|
| 46 | + if ($this->nogzip == false) { |
|
| 47 | 47 | $file = ($this->delayed ? 'delayed.php' : 'default.php'); |
| 48 | 48 | $phpcode = file_get_contents(AUTOPTIMIZE_PLUGIN_DIR.'/config/'.$file); |
| 49 | - $phpcode = str_replace(array('%%CONTENT%%','exit;'),array($mime,''),$phpcode); |
|
| 50 | - file_put_contents($this->cachedir.$this->filename,$phpcode, LOCK_EX); |
|
| 51 | - file_put_contents($this->cachedir.$this->filename.'.none',$code, LOCK_EX); |
|
| 52 | - if(!$this->delayed) { |
|
| 49 | + $phpcode = str_replace(array('%%CONTENT%%', 'exit;'), array($mime, ''), $phpcode); |
|
| 50 | + file_put_contents($this->cachedir.$this->filename, $phpcode, LOCK_EX); |
|
| 51 | + file_put_contents($this->cachedir.$this->filename.'.none', $code, LOCK_EX); |
|
| 52 | + if (!$this->delayed) { |
|
| 53 | 53 | // Compress now! |
| 54 | - file_put_contents($this->cachedir.$this->filename.'.deflate',gzencode($code,9,FORCE_DEFLATE), LOCK_EX); |
|
| 55 | - file_put_contents($this->cachedir.$this->filename.'.gzip',gzencode($code,9,FORCE_GZIP), LOCK_EX); |
|
| 54 | + file_put_contents($this->cachedir.$this->filename.'.deflate', gzencode($code, 9, FORCE_DEFLATE), LOCK_EX); |
|
| 55 | + file_put_contents($this->cachedir.$this->filename.'.gzip', gzencode($code, 9, FORCE_GZIP), LOCK_EX); |
|
| 56 | 56 | } |
| 57 | 57 | } else { |
| 58 | 58 | // Write code to cache without doing anything else |
| 59 | - file_put_contents($this->cachedir.$this->filename,$code, LOCK_EX); |
|
| 59 | + file_put_contents($this->cachedir.$this->filename, $code, LOCK_EX); |
|
| 60 | 60 | if (apply_filters('autoptimize_filter_cache_create_static_gzip', false)) { |
| 61 | 61 | // Create an additional cached gzip file |
| 62 | - file_put_contents($this->cachedir.$this->filename.'.gz', gzencode($code,9,FORCE_GZIP), LOCK_EX); |
|
| 62 | + file_put_contents($this->cachedir.$this->filename.'.gz', gzencode($code, 9, FORCE_GZIP), LOCK_EX); |
|
| 63 | 63 | } |
| 64 | 64 | } |
| 65 | 65 | } |
| 66 | 66 | |
| 67 | 67 | public function getname() { |
| 68 | - apply_filters('autoptimize_filter_cache_getname',AUTOPTIMIZE_CACHE_URL.$this->filename); |
|
| 68 | + apply_filters('autoptimize_filter_cache_getname', AUTOPTIMIZE_CACHE_URL.$this->filename); |
|
| 69 | 69 | return $this->filename; |
| 70 | 70 | } |
| 71 | 71 | |
| 72 | 72 | static function clearall() { |
| 73 | - if(!autoptimizeCache::cacheavail()) { |
|
| 73 | + if (!autoptimizeCache::cacheavail()) { |
|
| 74 | 74 | return false; |
| 75 | 75 | } |
| 76 | 76 | |
| 77 | 77 | // scan the cachedirs |
| 78 | - foreach (array("","js","css") as $scandirName) { |
|
| 78 | + foreach (array("", "js", "css") as $scandirName) { |
|
| 79 | 79 | $scan[$scandirName] = scandir(AUTOPTIMIZE_CACHE_DIR.$scandirName); |
| 80 | 80 | } |
| 81 | 81 | |
| 82 | 82 | // clear the cachedirs |
| 83 | 83 | foreach ($scan as $scandirName=>$scanneddir) { |
| 84 | - $thisAoCacheDir=rtrim(AUTOPTIMIZE_CACHE_DIR.$scandirName,"/")."/"; |
|
| 85 | - foreach($scanneddir as $file) { |
|
| 86 | - if(!in_array($file,array('.','..')) && strpos($file,AUTOPTIMIZE_CACHEFILE_PREFIX) !== false && is_file($thisAoCacheDir.$file)) { |
|
| 84 | + $thisAoCacheDir = rtrim(AUTOPTIMIZE_CACHE_DIR.$scandirName, "/")."/"; |
|
| 85 | + foreach ($scanneddir as $file) { |
|
| 86 | + if (!in_array($file, array('.', '..')) && strpos($file, AUTOPTIMIZE_CACHEFILE_PREFIX) !== false && is_file($thisAoCacheDir.$file)) { |
|
| 87 | 87 | @unlink($thisAoCacheDir.$file); |
| 88 | 88 | } |
| 89 | 89 | } |
@@ -98,15 +98,15 @@ discard block |
||
| 98 | 98 | do_action("autoptimize_action_cachepurged"); |
| 99 | 99 | } |
| 100 | 100 | } |
| 101 | - add_action("shutdown","autoptimize_do_cachepurged_action",11); |
|
| 101 | + add_action("shutdown", "autoptimize_do_cachepurged_action", 11); |
|
| 102 | 102 | |
| 103 | 103 | // try to purge caching plugins cache-files? |
| 104 | 104 | include_once(AUTOPTIMIZE_PLUGIN_DIR.'classlesses/autoptimizePageCacheFlush.php'); |
| 105 | - add_action("autoptimize_action_cachepurged","autoptimize_flush_pagecache",10,0); |
|
| 105 | + add_action("autoptimize_action_cachepurged", "autoptimize_flush_pagecache", 10, 0); |
|
| 106 | 106 | |
| 107 | 107 | // warm cache (part of speedupper)? |
| 108 | - if ( apply_filters('autoptimize_filter_speedupper', true) ) { |
|
| 109 | - $warmCacheUrl = site_url()."/?ao_speedup_cachebuster=".rand(1,100000); |
|
| 108 | + if (apply_filters('autoptimize_filter_speedupper', true)) { |
|
| 109 | + $warmCacheUrl = site_url()."/?ao_speedup_cachebuster=".rand(1, 100000); |
|
| 110 | 110 | $warmCache = @wp_remote_get($warmCacheUrl); |
| 111 | 111 | unset($warmCache); |
| 112 | 112 | } |
@@ -114,12 +114,12 @@ discard block |
||
| 114 | 114 | return true; |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | - static function stats() { |
|
| 118 | - $AOstats=get_transient("autoptimize_stats"); |
|
| 117 | + static function stats() { |
|
| 118 | + $AOstats = get_transient("autoptimize_stats"); |
|
| 119 | 119 | |
| 120 | 120 | if (empty($AOstats)) { |
| 121 | 121 | // Cache not available :( |
| 122 | - if(!autoptimizeCache::cacheavail()) { |
|
| 122 | + if (!autoptimizeCache::cacheavail()) { |
|
| 123 | 123 | return 0; |
| 124 | 124 | } |
| 125 | 125 | |
@@ -128,28 +128,28 @@ discard block |
||
| 128 | 128 | $size = 0; |
| 129 | 129 | |
| 130 | 130 | // scan the cachedirs |
| 131 | - foreach (array("","js","css") as $scandirName) { |
|
| 131 | + foreach (array("", "js", "css") as $scandirName) { |
|
| 132 | 132 | $scan[$scandirName] = scandir(AUTOPTIMIZE_CACHE_DIR.$scandirName); |
| 133 | 133 | } |
| 134 | 134 | |
| 135 | 135 | foreach ($scan as $scandirName=>$scanneddir) { |
| 136 | - $thisAoCacheDir=rtrim(AUTOPTIMIZE_CACHE_DIR.$scandirName,"/")."/"; |
|
| 137 | - foreach($scanneddir as $file) { |
|
| 138 | - if(!in_array($file,array('.','..')) && strpos($file,AUTOPTIMIZE_CACHEFILE_PREFIX) !== false) { |
|
| 139 | - if(is_file($thisAoCacheDir.$file)) { |
|
| 140 | - if(AUTOPTIMIZE_CACHE_NOGZIP && (strpos($file,'.js') !== false || strpos($file,'.css') !== false || strpos($file,'.img') !== false || strpos($file,'.txt') !== false )) { |
|
| 136 | + $thisAoCacheDir = rtrim(AUTOPTIMIZE_CACHE_DIR.$scandirName, "/")."/"; |
|
| 137 | + foreach ($scanneddir as $file) { |
|
| 138 | + if (!in_array($file, array('.', '..')) && strpos($file, AUTOPTIMIZE_CACHEFILE_PREFIX) !== false) { |
|
| 139 | + if (is_file($thisAoCacheDir.$file)) { |
|
| 140 | + if (AUTOPTIMIZE_CACHE_NOGZIP && (strpos($file, '.js') !== false || strpos($file, '.css') !== false || strpos($file, '.img') !== false || strpos($file, '.txt') !== false)) { |
|
| 141 | 141 | $count++; |
| 142 | - } elseif(!AUTOPTIMIZE_CACHE_NOGZIP && strpos($file,'.none') !== false) { |
|
| 142 | + } elseif (!AUTOPTIMIZE_CACHE_NOGZIP && strpos($file, '.none') !== false) { |
|
| 143 | 143 | $count++; |
| 144 | 144 | } |
| 145 | - $size+=filesize($thisAoCacheDir.$file); |
|
| 145 | + $size += filesize($thisAoCacheDir.$file); |
|
| 146 | 146 | } |
| 147 | 147 | } |
| 148 | 148 | } |
| 149 | 149 | } |
| 150 | - $AOstats=array($count,$size,time()); |
|
| 151 | - if ($count>100) { |
|
| 152 | - set_transient( "autoptimize_stats", $AOstats, apply_filters( 'autoptimize_filter_cache_statsexpiry', HOUR_IN_SECONDS ) ); |
|
| 150 | + $AOstats = array($count, $size, time()); |
|
| 151 | + if ($count > 100) { |
|
| 152 | + set_transient("autoptimize_stats", $AOstats, apply_filters('autoptimize_filter_cache_statsexpiry', HOUR_IN_SECONDS)); |
|
| 153 | 153 | } |
| 154 | 154 | } |
| 155 | 155 | // print the number of instances |
@@ -157,36 +157,36 @@ discard block |
||
| 157 | 157 | } |
| 158 | 158 | |
| 159 | 159 | static function cacheavail() { |
| 160 | - if(!defined('AUTOPTIMIZE_CACHE_DIR')) { |
|
| 160 | + if (!defined('AUTOPTIMIZE_CACHE_DIR')) { |
|
| 161 | 161 | // We didn't set a cache |
| 162 | 162 | return false; |
| 163 | 163 | } |
| 164 | 164 | |
| 165 | - foreach (array("","js","css") as $checkDir) { |
|
| 166 | - if(!autoptimizeCache::checkCacheDir(AUTOPTIMIZE_CACHE_DIR.$checkDir)) { |
|
| 165 | + foreach (array("", "js", "css") as $checkDir) { |
|
| 166 | + if (!autoptimizeCache::checkCacheDir(AUTOPTIMIZE_CACHE_DIR.$checkDir)) { |
|
| 167 | 167 | return false; |
| 168 | 168 | } |
| 169 | 169 | } |
| 170 | 170 | |
| 171 | 171 | /** write index.html here to avoid prying eyes */ |
| 172 | - $indexFile=AUTOPTIMIZE_CACHE_DIR.'/index.html'; |
|
| 173 | - if(!is_file($indexFile)) { |
|
| 174 | - @file_put_contents($indexFile,'<html><head><meta name="robots" content="noindex, nofollow"></head><body>Generated by <a href="http://wordpress.org/extend/plugins/autoptimize/" rel="nofollow">Autoptimize</a></body></html>'); |
|
| 172 | + $indexFile = AUTOPTIMIZE_CACHE_DIR.'/index.html'; |
|
| 173 | + if (!is_file($indexFile)) { |
|
| 174 | + @file_put_contents($indexFile, '<html><head><meta name="robots" content="noindex, nofollow"></head><body>Generated by <a href="http://wordpress.org/extend/plugins/autoptimize/" rel="nofollow">Autoptimize</a></body></html>'); |
|
| 175 | 175 | } |
| 176 | 176 | |
| 177 | 177 | /** write .htaccess here to overrule wp_super_cache */ |
| 178 | - $htAccess=AUTOPTIMIZE_CACHE_DIR.'/.htaccess'; |
|
| 179 | - if(!is_file($htAccess)) { |
|
| 178 | + $htAccess = AUTOPTIMIZE_CACHE_DIR.'/.htaccess'; |
|
| 179 | + if (!is_file($htAccess)) { |
|
| 180 | 180 | /** |
| 181 | 181 | * create wp-content/AO_htaccess_tmpl with |
| 182 | 182 | * whatever htaccess rules you might need |
| 183 | 183 | * if you want to override default AO htaccess |
| 184 | 184 | */ |
| 185 | - $htaccess_tmpl=WP_CONTENT_DIR."/AO_htaccess_tmpl"; |
|
| 185 | + $htaccess_tmpl = WP_CONTENT_DIR."/AO_htaccess_tmpl"; |
|
| 186 | 186 | if (is_file($htaccess_tmpl)) { |
| 187 | - $htAccessContent=file_get_contents($htaccess_tmpl); |
|
| 187 | + $htAccessContent = file_get_contents($htaccess_tmpl); |
|
| 188 | 188 | } else if (is_multisite() || AUTOPTIMIZE_CACHE_NOGZIP == false) { |
| 189 | - $htAccessContent='<IfModule mod_expires.c> |
|
| 189 | + $htAccessContent = '<IfModule mod_expires.c> |
|
| 190 | 190 | ExpiresActive On |
| 191 | 191 | ExpiresByType text/css A30672000 |
| 192 | 192 | ExpiresByType text/javascript A30672000 |
@@ -212,7 +212,7 @@ discard block |
||
| 212 | 212 | </Files> |
| 213 | 213 | </IfModule>'; |
| 214 | 214 | } else { |
| 215 | - $htAccessContent='<IfModule mod_expires.c> |
|
| 215 | + $htAccessContent = '<IfModule mod_expires.c> |
|
| 216 | 216 | ExpiresActive On |
| 217 | 217 | ExpiresByType text/css A30672000 |
| 218 | 218 | ExpiresByType text/javascript A30672000 |
@@ -238,7 +238,7 @@ discard block |
||
| 238 | 238 | </Files> |
| 239 | 239 | </IfModule>'; |
| 240 | 240 | } |
| 241 | - @file_put_contents($htAccess,$htAccessContent); |
|
| 241 | + @file_put_contents($htAccess, $htAccessContent); |
|
| 242 | 242 | } |
| 243 | 243 | |
| 244 | 244 | // All OK |
@@ -247,22 +247,22 @@ discard block |
||
| 247 | 247 | |
| 248 | 248 | static function checkCacheDir($dir) { |
| 249 | 249 | // Check and create if not exists |
| 250 | - if(!file_exists($dir)) { |
|
| 251 | - @mkdir($dir,0775,true); |
|
| 252 | - if(!file_exists($dir)) { |
|
| 250 | + if (!file_exists($dir)) { |
|
| 251 | + @mkdir($dir, 0775, true); |
|
| 252 | + if (!file_exists($dir)) { |
|
| 253 | 253 | return false; |
| 254 | 254 | } |
| 255 | 255 | } |
| 256 | 256 | |
| 257 | 257 | // check if we can now write |
| 258 | - if(!is_writable($dir)) { |
|
| 258 | + if (!is_writable($dir)) { |
|
| 259 | 259 | return false; |
| 260 | 260 | } |
| 261 | 261 | |
| 262 | 262 | // and write index.html here to avoid prying eyes |
| 263 | - $indexFile=$dir.'/index.html'; |
|
| 264 | - if(!is_file($indexFile)) { |
|
| 265 | - @file_put_contents($indexFile,'<html><head><meta name="robots" content="noindex, nofollow"></head><body>Generated by <a href="http://wordpress.org/extend/plugins/autoptimize/" rel="nofollow">Autoptimize</a></body></html>'); |
|
| 263 | + $indexFile = $dir.'/index.html'; |
|
| 264 | + if (!is_file($indexFile)) { |
|
| 265 | + @file_put_contents($indexFile, '<html><head><meta name="robots" content="noindex, nofollow"></head><body>Generated by <a href="http://wordpress.org/extend/plugins/autoptimize/" rel="nofollow">Autoptimize</a></body></html>'); |
|
| 266 | 266 | } |
| 267 | 267 | |
| 268 | 268 | return true; |
@@ -12,15 +12,15 @@ discard block |
||
| 12 | 12 | http://www.gnu.org/licenses/gpl.txt |
| 13 | 13 | */ |
| 14 | 14 | |
| 15 | -if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly |
|
| 15 | +if (!defined('ABSPATH')) exit; // Exit if accessed directly |
|
| 16 | 16 | |
| 17 | -define('AUTOPTIMIZE_PLUGIN_DIR',plugin_dir_path(__FILE__)); |
|
| 17 | +define('AUTOPTIMIZE_PLUGIN_DIR', plugin_dir_path(__FILE__)); |
|
| 18 | 18 | |
| 19 | 19 | // Load config class |
| 20 | 20 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeConfig.php'); |
| 21 | 21 | |
| 22 | 22 | // Load toolbar class |
| 23 | -include( AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeToolbar.php' ); |
|
| 23 | +include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeToolbar.php'); |
|
| 24 | 24 | |
| 25 | 25 | // Load partners tab if admin |
| 26 | 26 | if (is_admin()) { |
@@ -28,31 +28,31 @@ discard block |
||
| 28 | 28 | } |
| 29 | 29 | |
| 30 | 30 | // Do we gzip when caching (needed early to load autoptimizeCache.php) |
| 31 | -define('AUTOPTIMIZE_CACHE_NOGZIP',(bool) get_option('autoptimize_cache_nogzip')); |
|
| 31 | +define('AUTOPTIMIZE_CACHE_NOGZIP', (bool) get_option('autoptimize_cache_nogzip')); |
|
| 32 | 32 | |
| 33 | 33 | // Load cache class |
| 34 | 34 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeCache.php'); |
| 35 | 35 | |
| 36 | 36 | // wp-content dir name (automagically set, should not be needed), dirname of AO cache dir and AO-prefix can be overridden in wp-config.php |
| 37 | -if (!defined('AUTOPTIMIZE_WP_CONTENT_NAME')) { define('AUTOPTIMIZE_WP_CONTENT_NAME','/'.wp_basename( WP_CONTENT_DIR )); } |
|
| 38 | -if (!defined('AUTOPTIMIZE_CACHE_CHILD_DIR')) { define('AUTOPTIMIZE_CACHE_CHILD_DIR','/cache/autoptimize/'); } |
|
| 37 | +if (!defined('AUTOPTIMIZE_WP_CONTENT_NAME')) { define('AUTOPTIMIZE_WP_CONTENT_NAME', '/'.wp_basename(WP_CONTENT_DIR)); } |
|
| 38 | +if (!defined('AUTOPTIMIZE_CACHE_CHILD_DIR')) { define('AUTOPTIMIZE_CACHE_CHILD_DIR', '/cache/autoptimize/'); } |
|
| 39 | 39 | if (!defined('AUTOPTIMIZE_CACHEFILE_PREFIX')) { define('AUTOPTIMIZE_CACHEFILE_PREFIX', 'autoptimize_'); } |
| 40 | 40 | |
| 41 | 41 | // Plugin dir constants (plugin url's defined later to accomodate domain mapped sites) |
| 42 | 42 | if (!defined('AUTOPTIMIZE_CACHE_DIR')) { |
| 43 | - if (is_multisite() && apply_filters( 'autoptimize_separate_blog_caches' , true )) { |
|
| 43 | + if (is_multisite() && apply_filters('autoptimize_separate_blog_caches', true)) { |
|
| 44 | 44 | $blog_id = get_current_blog_id(); |
| 45 | - define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/' ); |
|
| 45 | + define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/'); |
|
| 46 | 46 | } else { |
| 47 | - define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR ); |
|
| 47 | + define('AUTOPTIMIZE_CACHE_DIR', WP_CONTENT_DIR.AUTOPTIMIZE_CACHE_CHILD_DIR); |
|
| 48 | 48 | } |
| 49 | 49 | } |
| 50 | -define('AUTOPTIMIZE_CACHE_DELAY',true); |
|
| 51 | -define('WP_ROOT_DIR',substr(WP_CONTENT_DIR, 0, strlen(WP_CONTENT_DIR)-strlen(AUTOPTIMIZE_WP_CONTENT_NAME))); |
|
| 50 | +define('AUTOPTIMIZE_CACHE_DELAY', true); |
|
| 51 | +define('WP_ROOT_DIR', substr(WP_CONTENT_DIR, 0, strlen(WP_CONTENT_DIR) - strlen(AUTOPTIMIZE_WP_CONTENT_NAME))); |
|
| 52 | 52 | |
| 53 | 53 | // WP CLI |
| 54 | -if ( defined( 'WP_CLI' ) && WP_CLI ) { |
|
| 55 | - require_once AUTOPTIMIZE_PLUGIN_DIR . 'classes/autoptimizeCLI.php'; |
|
| 54 | +if (defined('WP_CLI') && WP_CLI) { |
|
| 55 | + require_once AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeCLI.php'; |
|
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 | // Initialize the cache at least once |
@@ -61,65 +61,65 @@ discard block |
||
| 61 | 61 | /* Check if we're updating, in which case we might need to do stuff and flush the cache |
| 62 | 62 | to avoid old versions of aggregated files lingering around */ |
| 63 | 63 | |
| 64 | -$autoptimize_version="2.3.0"; |
|
| 65 | -$autoptimize_db_version=get_option('autoptimize_version','none'); |
|
| 64 | +$autoptimize_version = "2.3.0"; |
|
| 65 | +$autoptimize_db_version = get_option('autoptimize_version', 'none'); |
|
| 66 | 66 | |
| 67 | 67 | if ($autoptimize_db_version !== $autoptimize_version) { |
| 68 | - if ($autoptimize_db_version==="none") { |
|
| 68 | + if ($autoptimize_db_version === "none") { |
|
| 69 | 69 | add_action('admin_notices', 'autoptimize_install_config_notice'); |
| 70 | 70 | } else { |
| 71 | 71 | // updating, include the update-code |
| 72 | 72 | include(AUTOPTIMIZE_PLUGIN_DIR.'classlesses/autoptimizeUpdateCode.php'); |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | - update_option('autoptimize_version',$autoptimize_version); |
|
| 76 | - $autoptimize_db_version=$autoptimize_version; |
|
| 75 | + update_option('autoptimize_version', $autoptimize_version); |
|
| 76 | + $autoptimize_db_version = $autoptimize_version; |
|
| 77 | 77 | } |
| 78 | 78 | |
| 79 | 79 | // Load translations |
| 80 | 80 | function autoptimize_load_plugin_textdomain() { |
| 81 | - load_plugin_textdomain('autoptimize',false,plugin_basename(dirname( __FILE__ )).'/localization'); |
|
| 81 | + load_plugin_textdomain('autoptimize', false, plugin_basename(dirname(__FILE__)).'/localization'); |
|
| 82 | 82 | } |
| 83 | -add_action( 'init', 'autoptimize_load_plugin_textdomain' ); |
|
| 83 | +add_action('init', 'autoptimize_load_plugin_textdomain'); |
|
| 84 | 84 | |
| 85 | -function autoptimize_uninstall(){ |
|
| 85 | +function autoptimize_uninstall() { |
|
| 86 | 86 | autoptimizeCache::clearall(); |
| 87 | 87 | |
| 88 | - $delete_options=array("autoptimize_cache_clean", "autoptimize_cache_nogzip", "autoptimize_css", "autoptimize_css_datauris", "autoptimize_css_justhead", "autoptimize_css_defer", "autoptimize_css_defer_inline", "autoptimize_css_inline", "autoptimize_css_exclude", "autoptimize_html", "autoptimize_html_keepcomments", "autoptimize_js", "autoptimize_js_exclude", "autoptimize_js_forcehead", "autoptimize_js_justhead", "autoptimize_js_trycatch", "autoptimize_version", "autoptimize_show_adv", "autoptimize_cdn_url", "autoptimize_cachesize_notice","autoptimize_css_include_inline","autoptimize_js_include_inline","autoptimize_optimize_logged","autoptimize_optimize_checkout","autoptimize_extra_settings"); |
|
| 88 | + $delete_options = array("autoptimize_cache_clean", "autoptimize_cache_nogzip", "autoptimize_css", "autoptimize_css_datauris", "autoptimize_css_justhead", "autoptimize_css_defer", "autoptimize_css_defer_inline", "autoptimize_css_inline", "autoptimize_css_exclude", "autoptimize_html", "autoptimize_html_keepcomments", "autoptimize_js", "autoptimize_js_exclude", "autoptimize_js_forcehead", "autoptimize_js_justhead", "autoptimize_js_trycatch", "autoptimize_version", "autoptimize_show_adv", "autoptimize_cdn_url", "autoptimize_cachesize_notice", "autoptimize_css_include_inline", "autoptimize_js_include_inline", "autoptimize_optimize_logged", "autoptimize_optimize_checkout", "autoptimize_extra_settings"); |
|
| 89 | 89 | |
| 90 | - if ( !is_multisite() ) { |
|
| 91 | - foreach ($delete_options as $del_opt) { delete_option( $del_opt ); } |
|
| 90 | + if (!is_multisite()) { |
|
| 91 | + foreach ($delete_options as $del_opt) { delete_option($del_opt); } |
|
| 92 | 92 | } else { |
| 93 | 93 | global $wpdb; |
| 94 | - $blog_ids = $wpdb->get_col( "SELECT blog_id FROM $wpdb->blogs" ); |
|
| 94 | + $blog_ids = $wpdb->get_col("SELECT blog_id FROM $wpdb->blogs"); |
|
| 95 | 95 | $original_blog_id = get_current_blog_id(); |
| 96 | - foreach ( $blog_ids as $blog_id ) { |
|
| 97 | - switch_to_blog( $blog_id ); |
|
| 98 | - foreach ($delete_options as $del_opt) { delete_option( $del_opt ); } |
|
| 96 | + foreach ($blog_ids as $blog_id) { |
|
| 97 | + switch_to_blog($blog_id); |
|
| 98 | + foreach ($delete_options as $del_opt) { delete_option($del_opt); } |
|
| 99 | 99 | } |
| 100 | - switch_to_blog( $original_blog_id ); |
|
| 100 | + switch_to_blog($original_blog_id); |
|
| 101 | 101 | } |
| 102 | 102 | |
| 103 | - if ( wp_get_schedule( 'ao_cachechecker' ) ) { |
|
| 104 | - wp_clear_scheduled_hook( 'ao_cachechecker' ); |
|
| 103 | + if (wp_get_schedule('ao_cachechecker')) { |
|
| 104 | + wp_clear_scheduled_hook('ao_cachechecker'); |
|
| 105 | 105 | } |
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | function autoptimize_install_config_notice() { |
| 109 | 109 | echo '<div class="updated"><p>'; |
| 110 | - _e('Thank you for installing and activating Autoptimize. Please configure it under "Settings" -> "Autoptimize" to start improving your site\'s performance.', 'autoptimize' ); |
|
| 110 | + _e('Thank you for installing and activating Autoptimize. Please configure it under "Settings" -> "Autoptimize" to start improving your site\'s performance.', 'autoptimize'); |
|
| 111 | 111 | echo '</p></div>'; |
| 112 | 112 | } |
| 113 | 113 | |
| 114 | 114 | function autoptimize_update_config_notice() { |
| 115 | 115 | echo '<div class="updated"><p>'; |
| 116 | - _e('Autoptimize has just been updated. Please <strong>test your site now</strong> and adapt Autoptimize config if needed.', 'autoptimize' ); |
|
| 116 | + _e('Autoptimize has just been updated. Please <strong>test your site now</strong> and adapt Autoptimize config if needed.', 'autoptimize'); |
|
| 117 | 117 | echo '</p></div>'; |
| 118 | 118 | } |
| 119 | 119 | |
| 120 | 120 | function autoptimize_cache_unavailable_notice() { |
| 121 | 121 | echo '<div class="error"><p>'; |
| 122 | - printf( __( 'Autoptimize cannot write to the cache directory (%s), please fix to enable CSS/ JS optimization!', 'autoptimize' ), AUTOPTIMIZE_CACHE_DIR ); |
|
| 122 | + printf(__('Autoptimize cannot write to the cache directory (%s), please fix to enable CSS/ JS optimization!', 'autoptimize'), AUTOPTIMIZE_CACHE_DIR); |
|
| 123 | 123 | echo '</p></div>'; |
| 124 | 124 | } |
| 125 | 125 | |
@@ -128,27 +128,27 @@ discard block |
||
| 128 | 128 | $ao_noptimize = false; |
| 129 | 129 | |
| 130 | 130 | // noptimize in qs to get non-optimized page for debugging |
| 131 | - if (array_key_exists("ao_noptimize",$_GET) || array_key_exists("ao_noptirocket",$_GET)) { |
|
| 132 | - if ( ( ($_GET["ao_noptimize"]==="1") || ($_GET["ao_noptirocket"]==="1") ) && (apply_filters('autoptimize_filter_honor_qs_noptimize',true)) ) { |
|
| 131 | + if (array_key_exists("ao_noptimize", $_GET) || array_key_exists("ao_noptirocket", $_GET)) { |
|
| 132 | + if ((($_GET["ao_noptimize"] === "1") || ($_GET["ao_noptirocket"] === "1")) && (apply_filters('autoptimize_filter_honor_qs_noptimize', true))) { |
|
| 133 | 133 | $ao_noptimize = true; |
| 134 | 134 | } |
| 135 | 135 | } |
| 136 | 136 | |
| 137 | 137 | // check for DONOTMINIFY constant as used by e.g. WooCommerce POS |
| 138 | - if (defined('DONOTMINIFY') && (constant('DONOTMINIFY')===true || constant('DONOTMINIFY')==="true")) { |
|
| 138 | + if (defined('DONOTMINIFY') && (constant('DONOTMINIFY') === true || constant('DONOTMINIFY') === "true")) { |
|
| 139 | 139 | $ao_noptimize = true; |
| 140 | 140 | } |
| 141 | 141 | |
| 142 | 142 | // if setting says not to optimize logged in user and user is logged in |
| 143 | - if ( get_option('autoptimize_optimize_logged','on') !== 'on' && is_user_logged_in() && current_user_can('edit_posts') ) { |
|
| 143 | + if (get_option('autoptimize_optimize_logged', 'on') !== 'on' && is_user_logged_in() && current_user_can('edit_posts')) { |
|
| 144 | 144 | $ao_noptimize = true; |
| 145 | 145 | } |
| 146 | 146 | |
| 147 | 147 | // if setting says not to optimize cart/ checkout |
| 148 | - if ( get_option('autoptimize_optimize_checkout','on') !== 'on' ) { |
|
| 148 | + if (get_option('autoptimize_optimize_checkout', 'on') !== 'on') { |
|
| 149 | 149 | // checking for woocommerce, easy digital downloads and wp ecommerce |
| 150 | - foreach ( array("is_checkout","is_cart","edd_is_checkout","wpsc_is_cart","wpsc_is_checkout") as $shopCond ) { |
|
| 151 | - if ( function_exists($shopCond) && $shopCond() ) { |
|
| 150 | + foreach (array("is_checkout", "is_cart", "edd_is_checkout", "wpsc_is_cart", "wpsc_is_checkout") as $shopCond) { |
|
| 151 | + if (function_exists($shopCond) && $shopCond()) { |
|
| 152 | 152 | $ao_noptimize = true; |
| 153 | 153 | break; |
| 154 | 154 | } |
@@ -156,11 +156,11 @@ discard block |
||
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | // filter you can use to block autoptimization on your own terms |
| 159 | - $ao_noptimize = (bool) apply_filters( 'autoptimize_filter_noptimize', $ao_noptimize ); |
|
| 159 | + $ao_noptimize = (bool) apply_filters('autoptimize_filter_noptimize', $ao_noptimize); |
|
| 160 | 160 | |
| 161 | - if (!is_feed() && !$ao_noptimize && !is_admin() && ( !function_exists('is_customize_preview') || !is_customize_preview() ) ) { |
|
| 161 | + if (!is_feed() && !$ao_noptimize && !is_admin() && (!function_exists('is_customize_preview') || !is_customize_preview())) { |
|
| 162 | 162 | // load speedupper conditionally (true by default?) |
| 163 | - if ( apply_filters('autoptimize_filter_speedupper', true) ) { |
|
| 163 | + if (apply_filters('autoptimize_filter_speedupper', true)) { |
|
| 164 | 164 | include(AUTOPTIMIZE_PLUGIN_DIR.'classlesses/autoptimizeSpeedupper.php'); |
| 165 | 165 | } |
| 166 | 166 | |
@@ -171,7 +171,7 @@ discard block |
||
| 171 | 171 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeBase.php'); |
| 172 | 172 | |
| 173 | 173 | // Load extra classes and set some vars |
| 174 | - if($conf->get('autoptimize_html')) { |
|
| 174 | + if ($conf->get('autoptimize_html')) { |
|
| 175 | 175 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeHTML.php'); |
| 176 | 176 | // BUG: new minify-html does not support keeping HTML comments, skipping for now |
| 177 | 177 | // if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { |
@@ -181,7 +181,7 @@ discard block |
||
| 181 | 181 | // } |
| 182 | 182 | } |
| 183 | 183 | |
| 184 | - if($conf->get('autoptimize_js')) { |
|
| 184 | + if ($conf->get('autoptimize_js')) { |
|
| 185 | 185 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeScripts.php'); |
| 186 | 186 | if (!class_exists('JSMin')) { |
| 187 | 187 | if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { |
@@ -190,15 +190,15 @@ discard block |
||
| 190 | 190 | @include(AUTOPTIMIZE_PLUGIN_DIR.'classes/external/php/minify-2.3.1-jsmin.php'); |
| 191 | 191 | } |
| 192 | 192 | } |
| 193 | - if ( ! defined( 'CONCATENATE_SCRIPTS' )) { |
|
| 194 | - define('CONCATENATE_SCRIPTS',false); |
|
| 193 | + if (!defined('CONCATENATE_SCRIPTS')) { |
|
| 194 | + define('CONCATENATE_SCRIPTS', false); |
|
| 195 | 195 | } |
| 196 | - if ( ! defined( 'COMPRESS_SCRIPTS' )) { |
|
| 197 | - define('COMPRESS_SCRIPTS',false); |
|
| 196 | + if (!defined('COMPRESS_SCRIPTS')) { |
|
| 197 | + define('COMPRESS_SCRIPTS', false); |
|
| 198 | 198 | } |
| 199 | 199 | } |
| 200 | 200 | |
| 201 | - if($conf->get('autoptimize_css')) { |
|
| 201 | + if ($conf->get('autoptimize_css')) { |
|
| 202 | 202 | include(AUTOPTIMIZE_PLUGIN_DIR.'classes/autoptimizeStyles.php'); |
| 203 | 203 | if (defined('AUTOPTIMIZE_LEGACY_MINIFIERS')) { |
| 204 | 204 | if (!class_exists('Minify_CSS_Compressor')) { |
@@ -209,13 +209,13 @@ discard block |
||
| 209 | 209 | @include(AUTOPTIMIZE_PLUGIN_DIR.'classes/external/php/yui-php-cssmin-2.4.8-4_fgo.php'); |
| 210 | 210 | } |
| 211 | 211 | } |
| 212 | - if ( ! defined( 'COMPRESS_CSS' )) { |
|
| 213 | - define('COMPRESS_CSS',false); |
|
| 212 | + if (!defined('COMPRESS_CSS')) { |
|
| 213 | + define('COMPRESS_CSS', false); |
|
| 214 | 214 | } |
| 215 | 215 | } |
| 216 | 216 | |
| 217 | 217 | // filter to be used with care, kills all output buffers when true. use with extreme caution. you have been warned! |
| 218 | - if (apply_filters('autoptimize_filter_obkiller',false)) { |
|
| 218 | + if (apply_filters('autoptimize_filter_obkiller', false)) { |
|
| 219 | 219 | while (ob_get_level() > 0) { |
| 220 | 220 | ob_end_clean(); |
| 221 | 221 | } |
@@ -227,36 +227,36 @@ discard block |
||
| 227 | 227 | |
| 228 | 228 | // Action on end, this is where the magic happens |
| 229 | 229 | function autoptimize_end_buffering($content) { |
| 230 | - if ( ((stripos($content,"<html") === false) && (stripos($content,"<!DOCTYPE html") === false)) || preg_match('/<html[^>]*(?:amp|⚡)/',$content) === 1 || stripos($content,"<xsl:stylesheet") !== false ) { return $content; } |
|
| 230 | + if (((stripos($content, "<html") === false) && (stripos($content, "<!DOCTYPE html") === false)) || preg_match('/<html[^>]*(?:amp|⚡)/', $content) === 1 || stripos($content, "<xsl:stylesheet") !== false) { return $content; } |
|
| 231 | 231 | |
| 232 | 232 | // load URL constants as late as possible to allow domain mapper to kick in |
| 233 | 233 | if (function_exists("domain_mapping_siteurl")) { |
| 234 | - define('AUTOPTIMIZE_WP_SITE_URL',domain_mapping_siteurl(get_current_blog_id())); |
|
| 235 | - define('AUTOPTIMIZE_WP_CONTENT_URL',str_replace(get_original_url(AUTOPTIMIZE_WP_SITE_URL),AUTOPTIMIZE_WP_SITE_URL,content_url())); |
|
| 234 | + define('AUTOPTIMIZE_WP_SITE_URL', domain_mapping_siteurl(get_current_blog_id())); |
|
| 235 | + define('AUTOPTIMIZE_WP_CONTENT_URL', str_replace(get_original_url(AUTOPTIMIZE_WP_SITE_URL), AUTOPTIMIZE_WP_SITE_URL, content_url())); |
|
| 236 | 236 | } else { |
| 237 | - define('AUTOPTIMIZE_WP_SITE_URL',site_url()); |
|
| 238 | - define('AUTOPTIMIZE_WP_CONTENT_URL',content_url()); |
|
| 237 | + define('AUTOPTIMIZE_WP_SITE_URL', site_url()); |
|
| 238 | + define('AUTOPTIMIZE_WP_CONTENT_URL', content_url()); |
|
| 239 | 239 | } |
| 240 | 240 | |
| 241 | - if ( is_multisite() && apply_filters( 'autoptimize_separate_blog_caches' , true ) ) { |
|
| 241 | + if (is_multisite() && apply_filters('autoptimize_separate_blog_caches', true)) { |
|
| 242 | 242 | $blog_id = get_current_blog_id(); |
| 243 | - define('AUTOPTIMIZE_CACHE_URL',AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/' ); |
|
| 243 | + define('AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR.$blog_id.'/'); |
|
| 244 | 244 | } else { |
| 245 | - define('AUTOPTIMIZE_CACHE_URL',AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR); |
|
| 245 | + define('AUTOPTIMIZE_CACHE_URL', AUTOPTIMIZE_WP_CONTENT_URL.AUTOPTIMIZE_CACHE_CHILD_DIR); |
|
| 246 | 246 | } |
| 247 | - define('AUTOPTIMIZE_WP_ROOT_URL',str_replace(AUTOPTIMIZE_WP_CONTENT_NAME,'',AUTOPTIMIZE_WP_CONTENT_URL)); |
|
| 248 | - define('AUTOPTIMIZE_HASH',wp_hash(AUTOPTIMIZE_CACHE_DIR)); |
|
| 247 | + define('AUTOPTIMIZE_WP_ROOT_URL', str_replace(AUTOPTIMIZE_WP_CONTENT_NAME, '', AUTOPTIMIZE_WP_CONTENT_URL)); |
|
| 248 | + define('AUTOPTIMIZE_HASH', wp_hash(AUTOPTIMIZE_CACHE_DIR)); |
|
| 249 | 249 | |
| 250 | 250 | // Config element |
| 251 | 251 | $conf = autoptimizeConfig::instance(); |
| 252 | 252 | |
| 253 | 253 | // Choose the classes |
| 254 | 254 | $classes = array(); |
| 255 | - if($conf->get('autoptimize_js')) |
|
| 255 | + if ($conf->get('autoptimize_js')) |
|
| 256 | 256 | $classes[] = 'autoptimizeScripts'; |
| 257 | - if($conf->get('autoptimize_css')) |
|
| 257 | + if ($conf->get('autoptimize_css')) |
|
| 258 | 258 | $classes[] = 'autoptimizeStyles'; |
| 259 | - if($conf->get('autoptimize_html')) |
|
| 259 | + if ($conf->get('autoptimize_html')) |
|
| 260 | 260 | $classes[] = 'autoptimizeHTML'; |
| 261 | 261 | |
| 262 | 262 | // Set some options |
@@ -285,12 +285,12 @@ discard block |
||
| 285 | 285 | ) |
| 286 | 286 | ); |
| 287 | 287 | |
| 288 | - $content = apply_filters( 'autoptimize_filter_html_before_minify', $content ); |
|
| 288 | + $content = apply_filters('autoptimize_filter_html_before_minify', $content); |
|
| 289 | 289 | |
| 290 | 290 | // Run the classes |
| 291 | - foreach($classes as $name) { |
|
| 291 | + foreach ($classes as $name) { |
|
| 292 | 292 | $instance = new $name($content); |
| 293 | - if($instance->read($classoptions[$name])) { |
|
| 293 | + if ($instance->read($classoptions[$name])) { |
|
| 294 | 294 | $instance->minify(); |
| 295 | 295 | $instance->cache(); |
| 296 | 296 | $content = $instance->getcontent(); |
@@ -298,19 +298,19 @@ discard block |
||
| 298 | 298 | unset($instance); |
| 299 | 299 | } |
| 300 | 300 | |
| 301 | - $content = apply_filters( 'autoptimize_html_after_minify', $content ); |
|
| 301 | + $content = apply_filters('autoptimize_html_after_minify', $content); |
|
| 302 | 302 | return $content; |
| 303 | 303 | } |
| 304 | 304 | |
| 305 | -if ( autoptimizeCache::cacheavail() ) { |
|
| 305 | +if (autoptimizeCache::cacheavail()) { |
|
| 306 | 306 | $conf = autoptimizeConfig::instance(); |
| 307 | - if( $conf->get('autoptimize_html') || $conf->get('autoptimize_js') || $conf->get('autoptimize_css') ) { |
|
| 307 | + if ($conf->get('autoptimize_html') || $conf->get('autoptimize_js') || $conf->get('autoptimize_css')) { |
|
| 308 | 308 | // Hook to wordpress |
| 309 | 309 | if (defined('AUTOPTIMIZE_INIT_EARLIER')) { |
| 310 | - add_action('init','autoptimize_start_buffering',-1); |
|
| 310 | + add_action('init', 'autoptimize_start_buffering', -1); |
|
| 311 | 311 | } else { |
| 312 | 312 | if (!defined('AUTOPTIMIZE_HOOK_INTO')) { define('AUTOPTIMIZE_HOOK_INTO', 'template_redirect'); } |
| 313 | - add_action(constant("AUTOPTIMIZE_HOOK_INTO"),'autoptimize_start_buffering',2); |
|
| 313 | + add_action(constant("AUTOPTIMIZE_HOOK_INTO"), 'autoptimize_start_buffering', 2); |
|
| 314 | 314 | } |
| 315 | 315 | } |
| 316 | 316 | } else { |
@@ -318,15 +318,15 @@ discard block |
||
| 318 | 318 | } |
| 319 | 319 | |
| 320 | 320 | function autoptimize_activate() { |
| 321 | - register_uninstall_hook( __FILE__, 'autoptimize_uninstall' ); |
|
| 321 | + register_uninstall_hook(__FILE__, 'autoptimize_uninstall'); |
|
| 322 | 322 | } |
| 323 | -register_activation_hook( __FILE__, 'autoptimize_activate' ); |
|
| 323 | +register_activation_hook(__FILE__, 'autoptimize_activate'); |
|
| 324 | 324 | |
| 325 | 325 | include_once('classlesses/autoptimizeCacheChecker.php'); |
| 326 | 326 | |
| 327 | -add_action('plugins_loaded','includeAutoptimizeExtra'); |
|
| 327 | +add_action('plugins_loaded', 'includeAutoptimizeExtra'); |
|
| 328 | 328 | function includeAutoptimizeExtra() { |
| 329 | - if ( apply_filters('autoptimize_filter_extra_activate',true) ) { |
|
| 329 | + if (apply_filters('autoptimize_filter_extra_activate', true)) { |
|
| 330 | 330 | include_once('classlesses/autoptimizeExtra.php'); |
| 331 | 331 | } |
| 332 | 332 | } |