Version Description
- Don't queue the cache cleaning WP Cron job if we aren't caching.
- Cleanup cache if we turned caching off or directory changed.
Download this release
Release Info
Developer | aidvu |
Plugin | Page Optimize |
Version | 0.4.4 |
Comparing to | |
See all releases |
Code changes from version 0.4.3 to 0.4.4
- page-optimize.php +36 -11
- readme.txt +14 -6
page-optimize.php
CHANGED
@@ -4,7 +4,7 @@ Plugin Name: Page Optimize
|
|
4 |
Plugin URI: https://wordpress.org/plugins/page-optimize/
|
5 |
Description: Optimizes JS and CSS for faster page load and render in the browser.
|
6 |
Author: Automattic
|
7 |
-
Version: 0.4.
|
8 |
Author URI: http://automattic.com/
|
9 |
*/
|
10 |
|
@@ -31,15 +31,25 @@ if ( isset( $_SERVER['REQUEST_URI'] ) && '/_static/' === substr( $_SERVER['REQUE
|
|
31 |
exit;
|
32 |
}
|
33 |
|
34 |
-
function page_optimize_cache_cleanup( $file_age = DAY_IN_SECONDS ) {
|
35 |
-
if ( ! is_dir(
|
36 |
return;
|
37 |
}
|
38 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
39 |
// Grab all files in the cache directory
|
40 |
-
$cache_files = glob(
|
41 |
|
42 |
-
// Cleanup all files older than
|
43 |
foreach ( $cache_files as $cache_file ) {
|
44 |
if ( ! is_file( $cache_file ) ) {
|
45 |
continue;
|
@@ -54,9 +64,14 @@ add_action( PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB, 'page_optimize_cache_cleanup'
|
|
54 |
|
55 |
// Unschedule cache cleanup, and purge cache directory
|
56 |
function page_optimize_deactivate() {
|
57 |
-
|
|
|
|
|
|
|
|
|
|
|
58 |
|
59 |
-
wp_clear_scheduled_hook( PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB );
|
60 |
}
|
61 |
register_deactivation_hook( __FILE__, 'page_optimize_deactivate' );
|
62 |
|
@@ -236,6 +251,19 @@ function page_optimize_remove_concat_base_prefix( $original_fs_path ) {
|
|
236 |
return '/page-optimize-resource-outside-base-path/' . basename( $original_fs_path );
|
237 |
}
|
238 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
239 |
// Cases when we don't want to concat
|
240 |
function page_optimize_bail() {
|
241 |
// Bail if we're in customizer
|
@@ -257,10 +285,7 @@ function page_optimize_init() {
|
|
257 |
return;
|
258 |
}
|
259 |
|
260 |
-
|
261 |
-
if( ! wp_next_scheduled( PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB ) ) {
|
262 |
-
wp_schedule_event( time(), 'daily', PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB );
|
263 |
-
}
|
264 |
|
265 |
require_once __DIR__ . '/settings.php';
|
266 |
require_once __DIR__ . '/concat-css.php';
|
4 |
Plugin URI: https://wordpress.org/plugins/page-optimize/
|
5 |
Description: Optimizes JS and CSS for faster page load and render in the browser.
|
6 |
Author: Automattic
|
7 |
+
Version: 0.4.4
|
8 |
Author URI: http://automattic.com/
|
9 |
*/
|
10 |
|
31 |
exit;
|
32 |
}
|
33 |
|
34 |
+
function page_optimize_cache_cleanup( $cache_folder = false, $file_age = DAY_IN_SECONDS ) {
|
35 |
+
if ( ! is_dir( $cache_folder ) ) {
|
36 |
return;
|
37 |
}
|
38 |
|
39 |
+
// If cache is disabled when the cleanup runs, purge it
|
40 |
+
$using_cache = defined( 'PAGE_OPTIMIZE_CACHE_DIR' ) && ! empty( PAGE_OPTIMIZE_CACHE_DIR );
|
41 |
+
if ( ! $using_cache ) {
|
42 |
+
$file_age = 0;
|
43 |
+
}
|
44 |
+
// If the cache folder changed since queueing, purge it
|
45 |
+
if ( $using_cache && $cache_folder !== PAGE_OPTIMIZE_CACHE_DIR ) {
|
46 |
+
$file_age = 0;
|
47 |
+
}
|
48 |
+
|
49 |
// Grab all files in the cache directory
|
50 |
+
$cache_files = glob( $cache_folder . '/page-optimize-cache-*' );
|
51 |
|
52 |
+
// Cleanup all files older than $file_age
|
53 |
foreach ( $cache_files as $cache_file ) {
|
54 |
if ( ! is_file( $cache_file ) ) {
|
55 |
continue;
|
64 |
|
65 |
// Unschedule cache cleanup, and purge cache directory
|
66 |
function page_optimize_deactivate() {
|
67 |
+
$cache_folder = false;
|
68 |
+
if ( defined( 'PAGE_OPTIMIZE_CACHE_DIR' ) && ! empty( PAGE_OPTIMIZE_CACHE_DIR ) ) {
|
69 |
+
$cache_folder = PAGE_OPTIMIZE_CACHE_DIR;
|
70 |
+
}
|
71 |
+
|
72 |
+
page_optimize_cache_cleanup( $cache_folder, 0 /* max file age in seconds */ );
|
73 |
|
74 |
+
wp_clear_scheduled_hook( PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB, [ $cache_folder ] );
|
75 |
}
|
76 |
register_deactivation_hook( __FILE__, 'page_optimize_deactivate' );
|
77 |
|
251 |
return '/page-optimize-resource-outside-base-path/' . basename( $original_fs_path );
|
252 |
}
|
253 |
|
254 |
+
function page_optimize_schedule_cache_cleanup() {
|
255 |
+
$cache_folder = false;
|
256 |
+
if ( defined( 'PAGE_OPTIMIZE_CACHE_DIR' ) && ! empty( PAGE_OPTIMIZE_CACHE_DIR ) ) {
|
257 |
+
$cache_folder = PAGE_OPTIMIZE_CACHE_DIR;
|
258 |
+
}
|
259 |
+
$args = [ $cache_folder ];
|
260 |
+
|
261 |
+
// If caching is on, and job isn't queued for current cache folder
|
262 |
+
if( false !== $cache_folder && false === wp_next_scheduled( PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB, $args ) ) {
|
263 |
+
wp_schedule_event( time(), 'daily', PAGE_OPTIMIZE_CRON_CACHE_CLEANUP_JOB, $args );
|
264 |
+
}
|
265 |
+
}
|
266 |
+
|
267 |
// Cases when we don't want to concat
|
268 |
function page_optimize_bail() {
|
269 |
// Bail if we're in customizer
|
285 |
return;
|
286 |
}
|
287 |
|
288 |
+
page_optimize_schedule_cache_cleanup();
|
|
|
|
|
|
|
289 |
|
290 |
require_once __DIR__ . '/settings.php';
|
291 |
require_once __DIR__ . '/concat-css.php';
|
readme.txt
CHANGED
@@ -1,10 +1,10 @@
|
|
1 |
-
===
|
2 |
Contributors: aidvu, bpayton
|
3 |
Tags: performance
|
4 |
Requires at least: 5.3
|
5 |
Tested up to: 5.3
|
6 |
Requires PHP: 7.2
|
7 |
-
Stable tag: 0.4.
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -17,9 +17,7 @@ This plugin supports a few features that may improve the performance of page loa
|
|
17 |
* Concatenate CSS
|
18 |
* Concatenate JavaScript
|
19 |
* Execution timing of non-critical scripts
|
20 |
-
|
21 |
-
Notes:
|
22 |
-
* Changing script execution timing can be risky and will not work well for all sites.
|
23 |
|
24 |
== Installation ==
|
25 |
|
@@ -51,4 +49,14 @@ Supported query params:
|
|
51 |
|
52 |
== Changelog ==
|
53 |
|
54 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
=== Page Optimize ===
|
2 |
Contributors: aidvu, bpayton
|
3 |
Tags: performance
|
4 |
Requires at least: 5.3
|
5 |
Tested up to: 5.3
|
6 |
Requires PHP: 7.2
|
7 |
+
Stable tag: 0.4.4
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
17 |
* Concatenate CSS
|
18 |
* Concatenate JavaScript
|
19 |
* Execution timing of non-critical scripts
|
20 |
+
* Note: Changing script execution timing can be risky and will not work well for all sites.
|
|
|
|
|
21 |
|
22 |
== Installation ==
|
23 |
|
49 |
|
50 |
== Changelog ==
|
51 |
|
52 |
+
= 0.4.4 =
|
53 |
+
* Don't queue the cache cleaning WP Cron job if we aren't caching.
|
54 |
+
* Cleanup cache if we turned caching off or directory changed.
|
55 |
+
|
56 |
+
= 0.4.3 =
|
57 |
+
* gzip in PHP slows stuff down a bit. Simply don't do this. Any web server can handle this better.
|
58 |
+
* also remove the output buffering, no need for that anymore
|
59 |
+
* CSS Minification can sometimes slow things down significantly. Add constant to enable/disable.
|
60 |
+
|
61 |
+
= 0.4.2 =
|
62 |
+
* Initial release. No changes yet. :)
|