Version Description
- Oct 24 2018 =
- : Ability to create custom default config options per hosting company.
- : Ability to generate mobile Critical CSS.
- Media: Fixed a bug where Network sites could incorrectly override optimized images.
- CDN: Fixed a bug where image URLs containing backslashes were matched.
- Cache: Added default Mobile UA config setting.
- GUI: Fixed unknown shortcut characters for non-English languages Setting tabs.
Download this release
Release Info
Developer | LiteSpeedTech |
Plugin | LiteSpeed Cache |
Version | 2.6.4 |
Comparing to | |
See all releases |
Code changes from version 2.6.3 to 2.6.4
- admin/tpl/setting/settings_optimize.php +6 -1
- admin/tpl/settings.php +4 -4
- data/const.default.ini +25 -0
- inc/cdn.class.php +1 -1
- inc/const.cls.php +25 -3
- inc/css.cls.php +40 -10
- inc/data.class.php +6 -4
- inc/litespeed-cache.class.php +1 -1
- includes/litespeed-cache-cdn.class.php +1 -1
- includes/litespeed-cache.class.php +1 -1
- languages/litespeed-cache.pot +27 -27
- litespeed-cache.php +1 -1
- readme.txt +10 -2
admin/tpl/setting/settings_optimize.php
CHANGED
@@ -179,7 +179,12 @@ $last_critical_css_generated = LiteSpeed_Cache_CSS::get_summary() ;
|
|
179 |
<div class="litespeed-callout-warning">
|
180 |
<h4><?php echo __( 'URL list in queue waiting for cron','litespeed-cache' ) ; ?></h4>
|
181 |
<p>
|
182 |
-
|
|
|
|
|
|
|
|
|
|
|
183 |
</p>
|
184 |
</p>
|
185 |
<a href="<?php echo LiteSpeed_Cache_Utility::build_url( LiteSpeed_Cache::ACTION_CSS, LiteSpeed_Cache_CSS::TYPE_GENERATE_CRITICAL ) ; ?>" class="litespeed-btn-success">
|
179 |
<div class="litespeed-callout-warning">
|
180 |
<h4><?php echo __( 'URL list in queue waiting for cron','litespeed-cache' ) ; ?></h4>
|
181 |
<p>
|
182 |
+
<?php foreach ( $last_critical_css_generated[ 'queue' ] as $k => $v ) : ?>
|
183 |
+
<?php if ( ! is_array( $v ) ) continue ; ?>
|
184 |
+
<?php echo $v[ 'url' ] ; ?>
|
185 |
+
<?php if ( $v[ 'is_mobile' ] ) echo ' <span title="mobile">📱</span>' ; ?>
|
186 |
+
<br />
|
187 |
+
<?php endforeach ; ?>
|
188 |
</p>
|
189 |
</p>
|
190 |
<a href="<?php echo LiteSpeed_Cache_Utility::build_url( LiteSpeed_Cache::ACTION_CSS, LiteSpeed_Cache_CSS::TYPE_GENERATE_CRITICAL ) ; ?>" class="litespeed-btn-success">
|
admin/tpl/settings.php
CHANGED
@@ -143,7 +143,7 @@ if ( ! $adv_mode ) {
|
|
143 |
$accesskey = "litespeed-accesskey='$i'" ;
|
144 |
}
|
145 |
else {
|
146 |
-
$tmp = strtoupper( substr( $
|
147 |
if ( ! in_array( $tmp, $accesskey_set ) ) {
|
148 |
$accesskey_set[] = $tmp ;
|
149 |
$accesskey = "litespeed-accesskey='$tmp'" ;
|
@@ -159,7 +159,7 @@ if ( ! $adv_mode ) {
|
|
159 |
$accesskey = "litespeed-accesskey='$i'" ;
|
160 |
}
|
161 |
else {
|
162 |
-
$tmp = strtoupper( substr( $val[ '
|
163 |
if ( ! in_array( $tmp, $accesskey_set ) ) {
|
164 |
$accesskey_set[] = $tmp ;
|
165 |
$accesskey = "litespeed-accesskey='$tmp'" ;
|
@@ -207,10 +207,10 @@ if ( ! $adv_mode ) {
|
|
207 |
echo "<div class='litespeed-top20'></div>" ;
|
208 |
|
209 |
if ( $this->get_disable_all() ) {
|
210 |
-
submit_button(__('Save Changes', 'litespeed-cache'), 'litespeed-btn-
|
211 |
}
|
212 |
else {
|
213 |
-
submit_button(__('Save Changes', 'litespeed-cache'), 'litespeed-btn-
|
214 |
}
|
215 |
|
216 |
?>
|
143 |
$accesskey = "litespeed-accesskey='$i'" ;
|
144 |
}
|
145 |
else {
|
146 |
+
$tmp = strtoupper( substr( $tab, 0, 1 ) ) ;
|
147 |
if ( ! in_array( $tmp, $accesskey_set ) ) {
|
148 |
$accesskey_set[] = $tmp ;
|
149 |
$accesskey = "litespeed-accesskey='$tmp'" ;
|
159 |
$accesskey = "litespeed-accesskey='$i'" ;
|
160 |
}
|
161 |
else {
|
162 |
+
$tmp = strtoupper( substr( $val[ 'slug' ], 0, 1 ) ) ;
|
163 |
if ( ! in_array( $tmp, $accesskey_set ) ) {
|
164 |
$accesskey_set[] = $tmp ;
|
165 |
$accesskey = "litespeed-accesskey='$tmp'" ;
|
207 |
echo "<div class='litespeed-top20'></div>" ;
|
208 |
|
209 |
if ( $this->get_disable_all() ) {
|
210 |
+
submit_button(__('Save Changes', 'litespeed-cache'), 'litespeed-btn-success', 'litespeed-submit', true, array('disabled' => true)) ;
|
211 |
}
|
212 |
else {
|
213 |
+
submit_button(__('Save Changes', 'litespeed-cache'), 'litespeed-btn-success', 'litespeed-submit') ;
|
214 |
}
|
215 |
|
216 |
?>
|
data/const.default.ini
ADDED
@@ -0,0 +1,25 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
; This is the default LSCWP configuration file
|
2 |
+
; All keys and values please refer const.cls.php
|
3 |
+
; Here just list some examples
|
4 |
+
; Comments start with `;`
|
5 |
+
|
6 |
+
; OPID_PURGE_ON_UPGRADE
|
7 |
+
purge_upgrade = true
|
8 |
+
|
9 |
+
; OPID_CACHE_PRIV
|
10 |
+
cache_priv = true
|
11 |
+
|
12 |
+
; OPID_CACHE_COMMENTER
|
13 |
+
cache_commenter = true
|
14 |
+
|
15 |
+
; OPID_CACHE_OBJECT_HOST
|
16 |
+
cache_object_host = 'localhost'
|
17 |
+
; OPID_CACHE_OBJECT_PORT
|
18 |
+
cache_object_port = '11211'
|
19 |
+
|
20 |
+
; OPID_CACHE_BROWSER_TTL
|
21 |
+
cache_browser_ttl = 2592000
|
22 |
+
|
23 |
+
; OPID_PUBLIC_TTL
|
24 |
+
public_ttl = 604800
|
25 |
+
|
inc/cdn.class.php
CHANGED
@@ -273,7 +273,7 @@ class LiteSpeed_Cache_CDN
|
|
273 |
*/
|
274 |
private function _replace_file_types()
|
275 |
{
|
276 |
-
preg_match_all( '#(src|data-src|href)\s*=\s*[\'"]([^\'"]+)[\'"]#i', $this->content, $matches ) ;
|
277 |
if ( empty( $matches[ 2 ] ) ) {
|
278 |
return ;
|
279 |
}
|
273 |
*/
|
274 |
private function _replace_file_types()
|
275 |
{
|
276 |
+
preg_match_all( '#(src|data-src|href)\s*=\s*[\'"]([^\'"\\\]+)[\'"]#i', $this->content, $matches ) ;
|
277 |
if ( empty( $matches[ 2 ] ) ) {
|
278 |
return ;
|
279 |
}
|
inc/const.cls.php
CHANGED
@@ -325,7 +325,7 @@ class LiteSpeed_Cache_Const
|
|
325 |
self::OPID_CACHE_FAVICON => true,
|
326 |
self::OPID_CACHE_RES => true,
|
327 |
self::OPID_CACHE_MOBILE => 0, // todo: why not false
|
328 |
-
self::ID_MOBILEVIEW_LIST =>
|
329 |
self::OPID_CACHE_OBJECT => false,
|
330 |
self::OPID_CACHE_OBJECT_KIND => false,
|
331 |
self::OPID_CACHE_OBJECT_HOST => 'localhost',
|
@@ -391,7 +391,7 @@ class LiteSpeed_Cache_Const
|
|
391 |
self::OPID_CACHE_FAVICON => true,
|
392 |
self::OPID_CACHE_RES => true,
|
393 |
self::OPID_CACHE_MOBILE => false,
|
394 |
-
self::ID_MOBILEVIEW_LIST =>
|
395 |
self::OPID_CACHE_OBJECT => false,
|
396 |
self::OPID_CACHE_OBJECT_KIND => false,
|
397 |
self::OPID_CACHE_OBJECT_HOST => 'localhost',
|
@@ -509,7 +509,7 @@ class LiteSpeed_Cache_Const
|
|
509 |
self::CRWL_DOMAIN_IP => '',
|
510 |
self::CRWL_CUSTOM_SITEMAP => '',
|
511 |
self::CRWL_CRON_ACTIVE => false,
|
512 |
-
|
513 |
|
514 |
if ( LSWCP_ESI_SUPPORT ) {
|
515 |
$default_options[self::OPID_ESI_ENABLE] = false ;
|
@@ -517,6 +517,28 @@ class LiteSpeed_Cache_Const
|
|
517 |
$default_options[self::OPID_ESI_CACHE_COMMFORM] = true ;
|
518 |
}
|
519 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
520 |
if ( ! $include_thirdparty ) {
|
521 |
return $default_options ;
|
522 |
}
|
325 |
self::OPID_CACHE_FAVICON => true,
|
326 |
self::OPID_CACHE_RES => true,
|
327 |
self::OPID_CACHE_MOBILE => 0, // todo: why not false
|
328 |
+
self::ID_MOBILEVIEW_LIST => 'Mobile|Android|Silk/|Kindle|BlackBerry|Opera\ Mini|Opera\ Mobi',
|
329 |
self::OPID_CACHE_OBJECT => false,
|
330 |
self::OPID_CACHE_OBJECT_KIND => false,
|
331 |
self::OPID_CACHE_OBJECT_HOST => 'localhost',
|
391 |
self::OPID_CACHE_FAVICON => true,
|
392 |
self::OPID_CACHE_RES => true,
|
393 |
self::OPID_CACHE_MOBILE => false,
|
394 |
+
self::ID_MOBILEVIEW_LIST => 'Mobile|Android|Silk/|Kindle|BlackBerry|Opera\ Mini|Opera\ Mobi',
|
395 |
self::OPID_CACHE_OBJECT => false,
|
396 |
self::OPID_CACHE_OBJECT_KIND => false,
|
397 |
self::OPID_CACHE_OBJECT_HOST => 'localhost',
|
509 |
self::CRWL_DOMAIN_IP => '',
|
510 |
self::CRWL_CUSTOM_SITEMAP => '',
|
511 |
self::CRWL_CRON_ACTIVE => false,
|
512 |
+
) ;
|
513 |
|
514 |
if ( LSWCP_ESI_SUPPORT ) {
|
515 |
$default_options[self::OPID_ESI_ENABLE] = false ;
|
517 |
$default_options[self::OPID_ESI_CACHE_COMMFORM] = true ;
|
518 |
}
|
519 |
|
520 |
+
// Load default.ini
|
521 |
+
if ( file_exists( LSCWP_DIR . 'data/const.default.ini' ) ) {
|
522 |
+
$default_ini_cfg = parse_ini_file( LSCWP_DIR . 'data/const.default.ini' ) ;
|
523 |
+
foreach ( $default_options as $k => $v ) {
|
524 |
+
if ( ! array_key_exists( $k, $default_ini_cfg ) ) {
|
525 |
+
continue ;
|
526 |
+
}
|
527 |
+
|
528 |
+
// Parse value in ini file
|
529 |
+
$ini_v = $default_ini_cfg[ $k ] ;
|
530 |
+
if ( is_bool( $v ) ) { // Keep value type constantly
|
531 |
+
$ini_v = (bool) $default_ini_cfg[ $k ] ;
|
532 |
+
}
|
533 |
+
|
534 |
+
if ( $ini_v == $v ) {
|
535 |
+
continue ;
|
536 |
+
}
|
537 |
+
|
538 |
+
$default_options[ $k ] = $ini_v ;
|
539 |
+
}
|
540 |
+
}
|
541 |
+
|
542 |
if ( ! $include_thirdparty ) {
|
543 |
return $default_options ;
|
544 |
}
|
inc/css.cls.php
CHANGED
@@ -159,15 +159,30 @@ class LiteSpeed_Cache_CSS
|
|
159 |
if ( empty( $req_summary[ 'queue' ] ) ) {
|
160 |
$req_summary[ 'queue' ] = array() ;
|
161 |
}
|
162 |
-
$req_summary[ 'queue' ][ $ccss_type ] =
|
163 |
-
|
|
|
|
|
|
|
|
|
164 |
|
165 |
$this->_save_summary( $req_summary ) ;
|
166 |
return '' ;
|
167 |
}
|
168 |
|
169 |
// generate on the fly
|
170 |
-
return $this->_generate_ccss( $request_url, $ccss_type ) ;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
171 |
}
|
172 |
|
173 |
/**
|
@@ -191,9 +206,14 @@ class LiteSpeed_Cache_CSS
|
|
191 |
}
|
192 |
|
193 |
foreach ( $req_summary[ 'queue' ] as $k => $v ) {
|
194 |
-
|
|
|
|
|
|
|
195 |
|
196 |
-
|
|
|
|
|
197 |
|
198 |
// only request first one
|
199 |
if ( ! $continue ) {
|
@@ -208,7 +228,7 @@ class LiteSpeed_Cache_CSS
|
|
208 |
* @since 2.3
|
209 |
* @access private
|
210 |
*/
|
211 |
-
private function _generate_ccss( $request_url, $ccss_type )
|
212 |
{
|
213 |
$req_summary = self::get_summary() ;
|
214 |
|
@@ -225,6 +245,8 @@ class LiteSpeed_Cache_CSS
|
|
225 |
'home_url' => home_url(),
|
226 |
'url' => $request_url,
|
227 |
'ccss_type' => $ccss_type,
|
|
|
|
|
228 |
) ;
|
229 |
|
230 |
LiteSpeed_Cache_Log::debug( '[CSS] posting to : ' . $url, $data ) ;
|
@@ -312,12 +334,13 @@ class LiteSpeed_Cache_CSS
|
|
312 |
$css = 'tag' ;
|
313 |
}
|
314 |
|
|
|
|
|
315 |
// Check if in separate css type option
|
316 |
$separate_posttypes = LiteSpeed_Cache_Config::get_instance()->get_item( LiteSpeed_Cache_Config::ITEM_OPTM_CCSS_SEPARATE_POSTTYPE ) ;
|
317 |
if ( ! empty( $separate_posttypes ) && in_array( $css, $separate_posttypes ) ) {
|
318 |
LiteSpeed_Cache_Log::debug( '[CSS] Hit separate posttype setting [type] ' . $css ) ;
|
319 |
-
|
320 |
-
return $css . '-' . md5( $_SERVER[ 'REQUEST_URI' ] ) ;
|
321 |
}
|
322 |
|
323 |
$separate_uri = LiteSpeed_Cache_Config::get_instance()->get_item( LiteSpeed_Cache_Config::ITEM_OPTM_CCSS_SEPARATE_URI ) ;
|
@@ -325,11 +348,18 @@ class LiteSpeed_Cache_CSS
|
|
325 |
$result = LiteSpeed_Cache_Utility::str_hit_array( $_SERVER[ 'REQUEST_URI' ], $separate_uri ) ;
|
326 |
if ( $result ) {
|
327 |
LiteSpeed_Cache_Log::debug( '[CSS] Hit separate URI setting: ' . $result ) ;
|
328 |
-
|
329 |
-
return $css . '-' . md5( $_SERVER[ 'REQUEST_URI' ] ) ;
|
330 |
}
|
331 |
}
|
332 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
333 |
return $css ;
|
334 |
}
|
335 |
|
159 |
if ( empty( $req_summary[ 'queue' ] ) ) {
|
160 |
$req_summary[ 'queue' ] = array() ;
|
161 |
}
|
162 |
+
$req_summary[ 'queue' ][ $ccss_type ] = array(
|
163 |
+
'url' => $request_url,
|
164 |
+
'user_agent' => $_SERVER[ 'HTTP_USER_AGENT' ],
|
165 |
+
'is_mobile' => $this->_separate_mobile_ccss(),
|
166 |
+
) ;// Current UA will be used to request
|
167 |
+
LiteSpeed_Cache_Log::debug( '[CSS] Added queue [type] ' . $ccss_type . ' [url] ' . $request_url . ' [UA] ' . $_SERVER[ 'HTTP_USER_AGENT' ] ) ;
|
168 |
|
169 |
$this->_save_summary( $req_summary ) ;
|
170 |
return '' ;
|
171 |
}
|
172 |
|
173 |
// generate on the fly
|
174 |
+
return $this->_generate_ccss( $request_url, $ccss_type, $_SERVER[ 'HTTP_USER_AGENT' ], $this->_separate_mobile_ccss() ) ;
|
175 |
+
}
|
176 |
+
|
177 |
+
/**
|
178 |
+
* Check if need to separate ccss for mobile
|
179 |
+
*
|
180 |
+
* @since 2.6.4
|
181 |
+
* @access private
|
182 |
+
*/
|
183 |
+
private function _separate_mobile_ccss()
|
184 |
+
{
|
185 |
+
return wp_is_mobile() && LiteSpeed_Cache::config( LiteSpeed_Cache_Config::OPID_CACHE_MOBILE ) ;
|
186 |
}
|
187 |
|
188 |
/**
|
206 |
}
|
207 |
|
208 |
foreach ( $req_summary[ 'queue' ] as $k => $v ) {
|
209 |
+
if ( ! is_array( $v ) ) {// Backward compatibility for v2.6.4-
|
210 |
+
LiteSpeed_Cache_Log::debug( '[CSS] previous v2.6.4- data' ) ;
|
211 |
+
return ;
|
212 |
+
}
|
213 |
|
214 |
+
LiteSpeed_Cache_Log::debug( '[CSS] cron job [type] ' . $k . ' [url] ' . $v[ 'url' ] . ( $v[ 'is_mobile' ] ? ' 📱 ' : '' ) . ' [UA] ' . $v[ 'user_agent' ] ) ;
|
215 |
+
|
216 |
+
self::get_instance()->_generate_ccss( $v[ 'url' ], $k, $v[ 'user_agent' ], $v[ 'is_mobile' ] ) ;
|
217 |
|
218 |
// only request first one
|
219 |
if ( ! $continue ) {
|
228 |
* @since 2.3
|
229 |
* @access private
|
230 |
*/
|
231 |
+
private function _generate_ccss( $request_url, $ccss_type, $user_agent, $is_mobile )
|
232 |
{
|
233 |
$req_summary = self::get_summary() ;
|
234 |
|
245 |
'home_url' => home_url(),
|
246 |
'url' => $request_url,
|
247 |
'ccss_type' => $ccss_type,
|
248 |
+
'user_agent' => $user_agent,
|
249 |
+
'is_mobile' => $is_mobile ? 1 : 0,
|
250 |
) ;
|
251 |
|
252 |
LiteSpeed_Cache_Log::debug( '[CSS] posting to : ' . $url, $data ) ;
|
334 |
$css = 'tag' ;
|
335 |
}
|
336 |
|
337 |
+
$unique = false ;
|
338 |
+
|
339 |
// Check if in separate css type option
|
340 |
$separate_posttypes = LiteSpeed_Cache_Config::get_instance()->get_item( LiteSpeed_Cache_Config::ITEM_OPTM_CCSS_SEPARATE_POSTTYPE ) ;
|
341 |
if ( ! empty( $separate_posttypes ) && in_array( $css, $separate_posttypes ) ) {
|
342 |
LiteSpeed_Cache_Log::debug( '[CSS] Hit separate posttype setting [type] ' . $css ) ;
|
343 |
+
$unique = true ;
|
|
|
344 |
}
|
345 |
|
346 |
$separate_uri = LiteSpeed_Cache_Config::get_instance()->get_item( LiteSpeed_Cache_Config::ITEM_OPTM_CCSS_SEPARATE_URI ) ;
|
348 |
$result = LiteSpeed_Cache_Utility::str_hit_array( $_SERVER[ 'REQUEST_URI' ], $separate_uri ) ;
|
349 |
if ( $result ) {
|
350 |
LiteSpeed_Cache_Log::debug( '[CSS] Hit separate URI setting: ' . $result ) ;
|
351 |
+
$unique = true ;
|
|
|
352 |
}
|
353 |
}
|
354 |
|
355 |
+
if ( $unique ) {
|
356 |
+
$css .= '-' . md5( $_SERVER[ 'REQUEST_URI' ] ) ;
|
357 |
+
}
|
358 |
+
|
359 |
+
if ( $this->_separate_mobile_ccss() ) {
|
360 |
+
$css .= '.mobile' ;
|
361 |
+
}
|
362 |
+
|
363 |
return $css ;
|
364 |
}
|
365 |
|
inc/data.class.php
CHANGED
@@ -37,8 +37,8 @@ class LiteSpeed_Cache_Data
|
|
37 |
|
38 |
$this->_charset_collate = $wpdb->get_charset_collate() ;
|
39 |
|
40 |
-
$this->_tb_optm = $wpdb->
|
41 |
-
$this->_tb_img_optm = $wpdb->
|
42 |
|
43 |
$this->_create_tb_img_optm() ;
|
44 |
$this->_create_tb_html_optm() ;
|
@@ -52,7 +52,8 @@ class LiteSpeed_Cache_Data
|
|
52 |
*/
|
53 |
public static function get_tb_img_optm()
|
54 |
{
|
55 |
-
|
|
|
56 |
}
|
57 |
|
58 |
/**
|
@@ -63,7 +64,8 @@ class LiteSpeed_Cache_Data
|
|
63 |
*/
|
64 |
public static function get_optm_table()
|
65 |
{
|
66 |
-
|
|
|
67 |
}
|
68 |
|
69 |
/**
|
37 |
|
38 |
$this->_charset_collate = $wpdb->get_charset_collate() ;
|
39 |
|
40 |
+
$this->_tb_optm = $wpdb->prefix . self::TB_OPTIMIZER ;
|
41 |
+
$this->_tb_img_optm = $wpdb->prefix . self::TB_IMG_OPTM ;
|
42 |
|
43 |
$this->_create_tb_img_optm() ;
|
44 |
$this->_create_tb_html_optm() ;
|
52 |
*/
|
53 |
public static function get_tb_img_optm()
|
54 |
{
|
55 |
+
global $wpdb ;
|
56 |
+
return $wpdb->prefix . self::TB_OPTIMIZER ;
|
57 |
}
|
58 |
|
59 |
/**
|
64 |
*/
|
65 |
public static function get_optm_table()
|
66 |
{
|
67 |
+
global $wpdb ;
|
68 |
+
return $wpdb->prefix . self::TB_OPTIMIZER ;
|
69 |
}
|
70 |
|
71 |
/**
|
inc/litespeed-cache.class.php
CHANGED
@@ -25,7 +25,7 @@ class LiteSpeed_Cache
|
|
25 |
|
26 |
const NAME = 'LiteSpeed Cache' ;
|
27 |
const PLUGIN_NAME = 'litespeed-cache' ;
|
28 |
-
const PLUGIN_VERSION = '2.6.
|
29 |
|
30 |
const PAGE_EDIT_HTACCESS = 'lscache-edit-htaccess' ;
|
31 |
|
25 |
|
26 |
const NAME = 'LiteSpeed Cache' ;
|
27 |
const PLUGIN_NAME = 'litespeed-cache' ;
|
28 |
+
const PLUGIN_VERSION = '2.6.4' ;
|
29 |
|
30 |
const PAGE_EDIT_HTACCESS = 'lscache-edit-htaccess' ;
|
31 |
|
includes/litespeed-cache-cdn.class.php
CHANGED
@@ -273,7 +273,7 @@ class LiteSpeed_Cache_CDN
|
|
273 |
*/
|
274 |
private function _replace_file_types()
|
275 |
{
|
276 |
-
preg_match_all( '#(src|data-src|href)\s*=\s*[\'"]([^\'"]+)[\'"]#i', $this->content, $matches ) ;
|
277 |
if ( empty( $matches[ 2 ] ) ) {
|
278 |
return ;
|
279 |
}
|
273 |
*/
|
274 |
private function _replace_file_types()
|
275 |
{
|
276 |
+
preg_match_all( '#(src|data-src|href)\s*=\s*[\'"]([^\'"\\\]+)[\'"]#i', $this->content, $matches ) ;
|
277 |
if ( empty( $matches[ 2 ] ) ) {
|
278 |
return ;
|
279 |
}
|
includes/litespeed-cache.class.php
CHANGED
@@ -25,7 +25,7 @@ class LiteSpeed_Cache
|
|
25 |
|
26 |
const NAME = 'LiteSpeed Cache' ;
|
27 |
const PLUGIN_NAME = 'litespeed-cache' ;
|
28 |
-
const PLUGIN_VERSION = '2.6.
|
29 |
|
30 |
const PAGE_EDIT_HTACCESS = 'lscache-edit-htaccess' ;
|
31 |
|
25 |
|
26 |
const NAME = 'LiteSpeed Cache' ;
|
27 |
const PLUGIN_NAME = 'litespeed-cache' ;
|
28 |
+
const PLUGIN_VERSION = '2.6.4' ;
|
29 |
|
30 |
const PAGE_EDIT_HTACCESS = 'lscache-edit-htaccess' ;
|
31 |
|
languages/litespeed-cache.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the same license as the LiteSpeed Cache package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: LiteSpeed Cache 2.6.
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/litespeed-cache\n"
|
7 |
-
"POT-Creation-Date: 2018-10-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -98,7 +98,7 @@ msgstr ""
|
|
98 |
#: admin/tpl/setting/settings_optimize.php:138
|
99 |
#: admin/tpl/setting/settings_optimize.php:152
|
100 |
#: admin/tpl/setting/settings_optimize.php:153
|
101 |
-
#: admin/tpl/setting/settings_optimize.php:
|
102 |
#: admin/tpl/setting/settings_tuning.php:21
|
103 |
#: admin/tpl/setting/settings_tuning.php:57
|
104 |
msgid "ON"
|
@@ -198,7 +198,7 @@ msgstr ""
|
|
198 |
#: admin/tpl/setting/settings_inc.exclude_cookies.php:19
|
199 |
#: admin/tpl/setting/settings_media.php:36
|
200 |
#: admin/tpl/setting/settings_media.php:240
|
201 |
-
#: admin/tpl/setting/settings_optimize.php:
|
202 |
#: admin/tpl/setting/settings_purge.php:85
|
203 |
#: admin/tpl/setting/settings_tuning.php:38
|
204 |
#: admin/tpl/setting/settings_tuning.php:74
|
@@ -874,7 +874,7 @@ msgstr ""
|
|
874 |
msgid "Rate %s on %s"
|
875 |
msgstr ""
|
876 |
|
877 |
-
#. #-#-#-#-# litespeed-cache.pot (LiteSpeed Cache 2.6.
|
878 |
#. Plugin Name of the plugin/theme
|
879 |
#: admin/tpl/inc/admin_footer.php:6 inc/gui.class.php:353
|
880 |
#: includes/litespeed-cache-gui.class.php:353
|
@@ -1292,7 +1292,7 @@ msgstr ""
|
|
1292 |
#: admin/tpl/setting/settings_inc.exclude_cookies.php:22
|
1293 |
#: admin/tpl/setting/settings_inc.exclude_useragent.php:21
|
1294 |
#: admin/tpl/setting/settings_inc.media_webp.php:12
|
1295 |
-
#: admin/tpl/setting/settings_optimize.php:
|
1296 |
#: admin/tpl/setting/settings_tuning.php:20
|
1297 |
#: admin/tpl/setting/settings_tuning.php:56
|
1298 |
msgid "NOTE"
|
@@ -3258,7 +3258,7 @@ msgid "Size list in queue waiting for cron"
|
|
3258 |
msgstr ""
|
3259 |
|
3260 |
#: admin/tpl/setting/settings_media.php:112
|
3261 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3262 |
msgid "Run Queue Manually"
|
3263 |
msgstr ""
|
3264 |
|
@@ -3280,8 +3280,8 @@ msgstr ""
|
|
3280 |
|
3281 |
#: admin/tpl/setting/settings_media.php:137
|
3282 |
#: admin/tpl/setting/settings_optimize.php:137
|
3283 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3284 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3285 |
#: admin/tpl/setting/settings_tuning.php:103
|
3286 |
#: admin/tpl/setting/settings_tuning.php:162
|
3287 |
msgid ""
|
@@ -3446,7 +3446,7 @@ msgid "Minify JS files."
|
|
3446 |
msgstr ""
|
3447 |
|
3448 |
#: admin/tpl/setting/settings_optimize.php:69
|
3449 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3450 |
msgid "JS Combine"
|
3451 |
msgstr ""
|
3452 |
|
@@ -3544,82 +3544,82 @@ msgstr ""
|
|
3544 |
msgid "URL list in queue waiting for cron"
|
3545 |
msgstr ""
|
3546 |
|
3547 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3548 |
msgid "Separate CCSS Cache Post Types"
|
3549 |
msgstr ""
|
3550 |
|
3551 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3552 |
msgid ""
|
3553 |
"List post types where each item of that type should have its own CCSS "
|
3554 |
"generated."
|
3555 |
msgstr ""
|
3556 |
|
3557 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3558 |
msgid ""
|
3559 |
"For example, if every Page on the site has different formatting, enter %s in "
|
3560 |
"the box. Separate critical CSS files will be stored for every Page on the "
|
3561 |
"site."
|
3562 |
msgstr ""
|
3563 |
|
3564 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3565 |
msgid "Separate CCSS Cache URIs"
|
3566 |
msgstr ""
|
3567 |
|
3568 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3569 |
msgid ""
|
3570 |
"Separate critical CSS files will be generated for paths containing these "
|
3571 |
"strings."
|
3572 |
msgstr ""
|
3573 |
|
3574 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3575 |
msgid "Inline CSS Async Lib"
|
3576 |
msgstr ""
|
3577 |
|
3578 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3579 |
msgid "This will inline the asynchronous CSS library to avoid render blocking."
|
3580 |
msgstr ""
|
3581 |
|
3582 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3583 |
msgid "Load JS Deferred"
|
3584 |
msgstr ""
|
3585 |
|
3586 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3587 |
msgid "Doing so can help reduce resource contention and improve performance."
|
3588 |
msgstr ""
|
3589 |
|
3590 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3591 |
msgid "Exclude JQuery"
|
3592 |
msgstr ""
|
3593 |
|
3594 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3595 |
msgid ""
|
3596 |
"Improve compatibility with inline JS by preventing jQuery optimization. "
|
3597 |
"(Recommended Setting: %s)"
|
3598 |
msgstr ""
|
3599 |
|
3600 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3601 |
msgid ""
|
3602 |
"If there is any JS error related to %1$s when enabled %2$s, please turn on "
|
3603 |
"this option."
|
3604 |
msgstr ""
|
3605 |
|
3606 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3607 |
msgid "DNS Prefetch"
|
3608 |
msgstr ""
|
3609 |
|
3610 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3611 |
msgid "Prefetching DNS can reduce latency for visiters."
|
3612 |
msgstr ""
|
3613 |
|
3614 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3615 |
msgid "For example"
|
3616 |
msgstr ""
|
3617 |
|
3618 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3619 |
msgid "Remove Comments"
|
3620 |
msgstr ""
|
3621 |
|
3622 |
-
#: admin/tpl/setting/settings_optimize.php:
|
3623 |
msgid "Remove the comments inside of JS/CSS files when minifying."
|
3624 |
msgstr ""
|
3625 |
|
2 |
# This file is distributed under the same license as the LiteSpeed Cache package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: LiteSpeed Cache 2.6.4\n"
|
6 |
"Report-Msgid-Bugs-To: https://wordpress.org/support/plugin/litespeed-cache\n"
|
7 |
+
"POT-Creation-Date: 2018-10-24 16:24:00+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
98 |
#: admin/tpl/setting/settings_optimize.php:138
|
99 |
#: admin/tpl/setting/settings_optimize.php:152
|
100 |
#: admin/tpl/setting/settings_optimize.php:153
|
101 |
+
#: admin/tpl/setting/settings_optimize.php:248
|
102 |
#: admin/tpl/setting/settings_tuning.php:21
|
103 |
#: admin/tpl/setting/settings_tuning.php:57
|
104 |
msgid "ON"
|
198 |
#: admin/tpl/setting/settings_inc.exclude_cookies.php:19
|
199 |
#: admin/tpl/setting/settings_media.php:36
|
200 |
#: admin/tpl/setting/settings_media.php:240
|
201 |
+
#: admin/tpl/setting/settings_optimize.php:264
|
202 |
#: admin/tpl/setting/settings_purge.php:85
|
203 |
#: admin/tpl/setting/settings_tuning.php:38
|
204 |
#: admin/tpl/setting/settings_tuning.php:74
|
874 |
msgid "Rate %s on %s"
|
875 |
msgstr ""
|
876 |
|
877 |
+
#. #-#-#-#-# litespeed-cache.pot (LiteSpeed Cache 2.6.4) #-#-#-#-#
|
878 |
#. Plugin Name of the plugin/theme
|
879 |
#: admin/tpl/inc/admin_footer.php:6 inc/gui.class.php:353
|
880 |
#: includes/litespeed-cache-gui.class.php:353
|
1292 |
#: admin/tpl/setting/settings_inc.exclude_cookies.php:22
|
1293 |
#: admin/tpl/setting/settings_inc.exclude_useragent.php:21
|
1294 |
#: admin/tpl/setting/settings_inc.media_webp.php:12
|
1295 |
+
#: admin/tpl/setting/settings_optimize.php:250
|
1296 |
#: admin/tpl/setting/settings_tuning.php:20
|
1297 |
#: admin/tpl/setting/settings_tuning.php:56
|
1298 |
msgid "NOTE"
|
3258 |
msgstr ""
|
3259 |
|
3260 |
#: admin/tpl/setting/settings_media.php:112
|
3261 |
+
#: admin/tpl/setting/settings_optimize.php:191
|
3262 |
msgid "Run Queue Manually"
|
3263 |
msgstr ""
|
3264 |
|
3280 |
|
3281 |
#: admin/tpl/setting/settings_media.php:137
|
3282 |
#: admin/tpl/setting/settings_optimize.php:137
|
3283 |
+
#: admin/tpl/setting/settings_optimize.php:238
|
3284 |
+
#: admin/tpl/setting/settings_optimize.php:276
|
3285 |
#: admin/tpl/setting/settings_tuning.php:103
|
3286 |
#: admin/tpl/setting/settings_tuning.php:162
|
3287 |
msgid ""
|
3446 |
msgstr ""
|
3447 |
|
3448 |
#: admin/tpl/setting/settings_optimize.php:69
|
3449 |
+
#: admin/tpl/setting/settings_optimize.php:251
|
3450 |
msgid "JS Combine"
|
3451 |
msgstr ""
|
3452 |
|
3544 |
msgid "URL list in queue waiting for cron"
|
3545 |
msgstr ""
|
3546 |
|
3547 |
+
#: admin/tpl/setting/settings_optimize.php:200
|
3548 |
msgid "Separate CCSS Cache Post Types"
|
3549 |
msgstr ""
|
3550 |
|
3551 |
+
#: admin/tpl/setting/settings_optimize.php:204
|
3552 |
msgid ""
|
3553 |
"List post types where each item of that type should have its own CCSS "
|
3554 |
"generated."
|
3555 |
msgstr ""
|
3556 |
|
3557 |
+
#: admin/tpl/setting/settings_optimize.php:205
|
3558 |
msgid ""
|
3559 |
"For example, if every Page on the site has different formatting, enter %s in "
|
3560 |
"the box. Separate critical CSS files will be stored for every Page on the "
|
3561 |
"site."
|
3562 |
msgstr ""
|
3563 |
|
3564 |
+
#: admin/tpl/setting/settings_optimize.php:212
|
3565 |
msgid "Separate CCSS Cache URIs"
|
3566 |
msgstr ""
|
3567 |
|
3568 |
+
#: admin/tpl/setting/settings_optimize.php:216
|
3569 |
msgid ""
|
3570 |
"Separate critical CSS files will be generated for paths containing these "
|
3571 |
"strings."
|
3572 |
msgstr ""
|
3573 |
|
3574 |
+
#: admin/tpl/setting/settings_optimize.php:223
|
3575 |
msgid "Inline CSS Async Lib"
|
3576 |
msgstr ""
|
3577 |
|
3578 |
+
#: admin/tpl/setting/settings_optimize.php:227
|
3579 |
msgid "This will inline the asynchronous CSS library to avoid render blocking."
|
3580 |
msgstr ""
|
3581 |
|
3582 |
+
#: admin/tpl/setting/settings_optimize.php:233
|
3583 |
msgid "Load JS Deferred"
|
3584 |
msgstr ""
|
3585 |
|
3586 |
+
#: admin/tpl/setting/settings_optimize.php:237
|
3587 |
msgid "Doing so can help reduce resource contention and improve performance."
|
3588 |
msgstr ""
|
3589 |
|
3590 |
+
#: admin/tpl/setting/settings_optimize.php:244
|
3591 |
msgid "Exclude JQuery"
|
3592 |
msgstr ""
|
3593 |
|
3594 |
+
#: admin/tpl/setting/settings_optimize.php:248
|
3595 |
msgid ""
|
3596 |
"Improve compatibility with inline JS by preventing jQuery optimization. "
|
3597 |
"(Recommended Setting: %s)"
|
3598 |
msgstr ""
|
3599 |
|
3600 |
+
#: admin/tpl/setting/settings_optimize.php:251
|
3601 |
msgid ""
|
3602 |
"If there is any JS error related to %1$s when enabled %2$s, please turn on "
|
3603 |
"this option."
|
3604 |
msgstr ""
|
3605 |
|
3606 |
+
#: admin/tpl/setting/settings_optimize.php:258
|
3607 |
msgid "DNS Prefetch"
|
3608 |
msgstr ""
|
3609 |
|
3610 |
+
#: admin/tpl/setting/settings_optimize.php:262
|
3611 |
msgid "Prefetching DNS can reduce latency for visiters."
|
3612 |
msgstr ""
|
3613 |
|
3614 |
+
#: admin/tpl/setting/settings_optimize.php:263
|
3615 |
msgid "For example"
|
3616 |
msgstr ""
|
3617 |
|
3618 |
+
#: admin/tpl/setting/settings_optimize.php:271
|
3619 |
msgid "Remove Comments"
|
3620 |
msgstr ""
|
3621 |
|
3622 |
+
#: admin/tpl/setting/settings_optimize.php:275
|
3623 |
msgid "Remove the comments inside of JS/CSS files when minifying."
|
3624 |
msgstr ""
|
3625 |
|
litespeed-cache.php
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
* Plugin Name: LiteSpeed Cache
|
16 |
* Plugin URI: https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration
|
17 |
* Description: High-performance page caching and site optimization from LiteSpeed
|
18 |
-
* Version: 2.6.
|
19 |
* Author: LiteSpeed Technologies
|
20 |
* Author URI: https://www.litespeedtech.com
|
21 |
* License: GPLv3
|
15 |
* Plugin Name: LiteSpeed Cache
|
16 |
* Plugin URI: https://www.litespeedtech.com/products/cache-plugins/wordpress-acceleration
|
17 |
* Description: High-performance page caching and site optimization from LiteSpeed
|
18 |
+
* Version: 2.6.4
|
19 |
* Author: LiteSpeed Technologies
|
20 |
* Author URI: https://www.litespeedtech.com
|
21 |
* License: GPLv3
|
readme.txt
CHANGED
@@ -3,7 +3,7 @@ Contributors: LiteSpeedTech
|
|
3 |
Tags: caching, optimize, performance, pagespeed, seo, speed, image optimize, compress, object cache, redis, memcached, database cleaner
|
4 |
Requires at least: 4.0
|
5 |
Tested up to: 4.9.8
|
6 |
-
Stable tag: 2.6.
|
7 |
License: GPLv3
|
8 |
License URI: http://www.gnu.org/licenses/gpl.html
|
9 |
|
@@ -275,8 +275,16 @@ Click on the `Advanced View` link at the top of the page, and several more tabs
|
|
275 |
|
276 |
== Changelog ==
|
277 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
278 |
= 2.6.3 - Oct 18 2018 =
|
279 |
-
* 🌱:
|
280 |
* 🌱<strong>CLI</strong>: Added new `lscache-admin reset_options` command.
|
281 |
* <strong>GUI</strong>: Added shortcuts for more of the Settings tabs.
|
282 |
* <strong>Media</strong>: Updated Lazy Load JS library to the most recent version.
|
3 |
Tags: caching, optimize, performance, pagespeed, seo, speed, image optimize, compress, object cache, redis, memcached, database cleaner
|
4 |
Requires at least: 4.0
|
5 |
Tested up to: 4.9.8
|
6 |
+
Stable tag: 2.6.4
|
7 |
License: GPLv3
|
8 |
License URI: http://www.gnu.org/licenses/gpl.html
|
9 |
|
275 |
|
276 |
== Changelog ==
|
277 |
|
278 |
+
= 2.6.4 - Oct 24 2018 =
|
279 |
+
* 🌱: Ability to create custom default config options per hosting company.
|
280 |
+
* 🌱: Ability to generate mobile Critical CSS.
|
281 |
+
* 🐞<strong>Media</strong>: Fixed a bug where Network sites could incorrectly override optimized images.
|
282 |
+
* 🐞<strong>CDN</strong>: Fixed a bug where image URLs containing backslashes were matched.
|
283 |
+
* <strong>Cache</strong>: Added default Mobile UA config setting.
|
284 |
+
* <strong>GUI</strong>: Fixed unknown shortcut characters for non-English languages Setting tabs.
|
285 |
+
|
286 |
= 2.6.3 - Oct 18 2018 =
|
287 |
+
* 🌱: Ability to Reset All Options.
|
288 |
* 🌱<strong>CLI</strong>: Added new `lscache-admin reset_options` command.
|
289 |
* <strong>GUI</strong>: Added shortcuts for more of the Settings tabs.
|
290 |
* <strong>Media</strong>: Updated Lazy Load JS library to the most recent version.
|