Version Description
= v160211 =
Requires PHP v5.4+. The latest version of Comet Cache is a complete rewrite (OOP design). Faster! and even more dependable. For further details, please see http://cometcache.com/new-minimum-php-version-php-5-4/
Download this release
Release Info
Developer | raamdev |
Plugin | Comet Cache |
Version | 160227 |
Comparing to | |
See all releases |
Code changes from version 160223.1 to 160227
- CHANGELOG.md +14 -0
- comet-cache.php +1 -1
- readme.txt +11 -1
- src/includes/classes/AdvCacheBackCompat.php +9 -7
- src/includes/classes/MenuPageOptions.php +8 -1
- src/includes/classes/Plugin.php +2 -0
- src/includes/closures/Plugin/HtaccessUtils.php +2 -2
- src/includes/closures/Shared/CacheLockUtils.php +4 -1
- src/includes/closures/Shared/CachePathUtils.php +4 -2
- src/includes/plugin.php +4 -1
- src/includes/stub.php +1 -1
- src/includes/templates/advanced-cache.txt +1 -0
- src/includes/translations/comet-cache.pot +82 -66
- src/vendor/autoload.php +1 -1
- src/vendor/composer/autoload_real.php +4 -4
CHANGELOG.md
CHANGED
@@ -1,3 +1,17 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
= v160223 =
|
2 |
|
3 |
- **Announcement: After March 1st, 2016 Comet Cache will require PHP Multibyte String support.** The `mbstring` extension provides Multibyte String support to PHP and is required to properly handle UTF-8 characters, which many sites now use. Without Multibyte String support, caching will be unstable. For that reason we are requiring the `mbstring` extension to improve reliability when caching and to prevent your site from experiencing unforeseen issues in the future..
|
1 |
+
= v160227 =
|
2 |
+
|
3 |
+
- **Bug Fix**: Fixed a ZenCache Backwards Compatibility bug that was preventing calls to `$GLOBALS['zencache']` from working properly with Comet Cache. See [Issue #689](https://github.com/websharks/comet-cache/issues/689)
|
4 |
+
- **Bug Fix**: Fixed a ZenCache Backwards Compatibility bug that was preventing `ZENCACHE_ALLOWED` from working properly with Comet Cache. See [Issue #683](https://github.com/websharks/comet-cache/issues/683).
|
5 |
+
- **Bug Fix**: Fixed a Quick Cache Backwards Compatibility bug that was preventing calls to `$GLOBALS['quick_cache']` from working properly with Comet Cache. Props to @Kedakai for reporting. See [Issue #691](https://github.com/websharks/comet-cache/issues/691).
|
6 |
+
- **Bug Fix** (Pro): Fixed an Auto-Cache Engine bug that was preventing the Auto-Cache Engine from generating cached pages. Props @digitalhexcode for reporting. See [Issue #679](https://github.com/websharks/comet-cache/issues/679).
|
7 |
+
- **Enhancement**: Improved the way Comet Cache handles file locking in an effort to improve compatibility with various environments. There were reports of issues with PHP FPM/FastCGI and this release attempts to address those. See [Issue #671](https://github.com/websharks/comet-cache/issues/671)
|
8 |
+
- **Enhancement** (Pro): A new HTML Compression option allows you to define whether or not HTML Compression should be enabled for Logged-In users (when Logged-In User caching is enabled). See **Comet Cache → Plugin Options → HTML Compression → Enable HTML Compression for Logged-In Users?**. Props @renzms. See [Issue #650](https://github.com/websharks/comet-cache/issues/650).
|
9 |
+
- **Accelerated Mobile Pages (AMP) Compatibility**: Added full support for Accelerated Mobile Pages via the [AMP plugin](https://wordpress.org/plugins/amp/). Comet Cache now works great alongside the AMP plugin. AMP-generated pages will be cached and those cache files will be intelligently cleared when necessary to keep things up-to-date. See [Issue #688](https://github.com/websharks/comet-cache/issues/688).
|
10 |
+
|
11 |
+
= v160223.1 =
|
12 |
+
|
13 |
+
- **Bug Fix**: Fixes PHP Fatal Error when upgrading from Comet Cache v160211.
|
14 |
+
|
15 |
= v160223 =
|
16 |
|
17 |
- **Announcement: After March 1st, 2016 Comet Cache will require PHP Multibyte String support.** The `mbstring` extension provides Multibyte String support to PHP and is required to properly handle UTF-8 characters, which many sites now use. Without Multibyte String support, caching will be unstable. For that reason we are requiring the `mbstring` extension to improve reliability when caching and to prevent your site from experiencing unforeseen issues in the future..
|
comet-cache.php
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
-
Version:
|
4 |
Text Domain: comet-cache
|
5 |
Plugin Name: Comet Cache
|
6 |
Network: true
|
1 |
<?php
|
2 |
/*
|
3 |
+
Version: 160227
|
4 |
Text Domain: comet-cache
|
5 |
Plugin Name: Comet Cache
|
6 |
Network: true
|
readme.txt
CHANGED
@@ -1,6 +1,6 @@
|
|
1 |
=== Comet Cache ===
|
2 |
|
3 |
-
Stable tag:
|
4 |
Requires at least: 4.1
|
5 |
Tested up to: 4.5-alpha
|
6 |
Text Domain: comet-cache
|
@@ -336,6 +336,16 @@ Requires PHP v5.4+. The latest version of Comet Cache is a complete rewrite (OOP
|
|
336 |
|
337 |
== Changelog ==
|
338 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
339 |
= v160223.1 =
|
340 |
|
341 |
- **Bug Fix**: Fixes PHP Fatal Error when upgrading from Comet Cache v160211.
|
1 |
=== Comet Cache ===
|
2 |
|
3 |
+
Stable tag: 160227
|
4 |
Requires at least: 4.1
|
5 |
Tested up to: 4.5-alpha
|
6 |
Text Domain: comet-cache
|
336 |
|
337 |
== Changelog ==
|
338 |
|
339 |
+
= v160227 =
|
340 |
+
|
341 |
+
- **Bug Fix**: Fixed a ZenCache Backwards Compatibility bug that was preventing calls to `$GLOBALS['zencache']` from working properly with Comet Cache. See [Issue #689](https://github.com/websharks/comet-cache/issues/689)
|
342 |
+
- **Bug Fix**: Fixed a ZenCache Backwards Compatibility bug that was preventing `ZENCACHE_ALLOWED` from working properly with Comet Cache. See [Issue #683](https://github.com/websharks/comet-cache/issues/683).
|
343 |
+
- **Bug Fix**: Fixed a Quick Cache Backwards Compatibility bug that was preventing calls to `$GLOBALS['quick_cache']` from working properly with Comet Cache. Props to @Kedakai for reporting. See [Issue #691](https://github.com/websharks/comet-cache/issues/691).
|
344 |
+
- **Bug Fix** (Pro): Fixed an Auto-Cache Engine bug that was preventing the Auto-Cache Engine from generating cached pages. Props @digitalhexcode for reporting. See [Issue #679](https://github.com/websharks/comet-cache/issues/679).
|
345 |
+
- **Enhancement**: Improved the way Comet Cache handles file locking in an effort to improve compatibility with various environments. There were reports of issues with PHP FPM/FastCGI and this release attempts to address those. See [Issue #671](https://github.com/websharks/comet-cache/issues/671)
|
346 |
+
- **Enhancement** (Pro): A new HTML Compression option allows you to define whether or not HTML Compression should be enabled for Logged-In users (when Logged-In User caching is enabled). See **Comet Cache → Plugin Options → HTML Compression → Enable HTML Compression for Logged-In Users?**. Props @renzms. See [Issue #650](https://github.com/websharks/comet-cache/issues/650).
|
347 |
+
- **Accelerated Mobile Pages (AMP) Compatibility**: Added full support for Accelerated Mobile Pages via the [AMP plugin](https://wordpress.org/plugins/amp/). Comet Cache now works great alongside the AMP plugin. AMP-generated pages will be cached and those cache files will be intelligently cleared when necessary to keep things up-to-date. See [Issue #688](https://github.com/websharks/comet-cache/issues/688).
|
348 |
+
|
349 |
= v160223.1 =
|
350 |
|
351 |
- **Bug Fix**: Fixes PHP Fatal Error when upgrading from Comet Cache v160211.
|
src/includes/classes/AdvCacheBackCompat.php
CHANGED
@@ -44,6 +44,8 @@ class AdvCacheBackCompat
|
|
44 |
*/
|
45 |
public static function zenCacheConstants()
|
46 |
{
|
|
|
|
|
47 |
if (!($constants = get_defined_constants(true)) || empty($constants['user'])) {
|
48 |
return; // Nothing to do; i.e. no user-defined constants.
|
49 |
}
|
@@ -51,17 +53,17 @@ class AdvCacheBackCompat
|
|
51 |
if (stripos($_constant, 'ZENCACHE_') !== 0) {
|
52 |
continue; // Nothing to do here.
|
53 |
}
|
54 |
-
if (!($_constant_sub_name = substr($_constant,
|
55 |
continue; // Nothing to do here.
|
56 |
}
|
57 |
-
if (!defined(
|
58 |
-
define(
|
59 |
}
|
60 |
}
|
61 |
-
|
62 |
-
|
63 |
-
if (isset($_SERVER['ZENCACHE_ALLOWED']) && !isset($_SERVER[GLOBAL_NS.'_ALLOWED'])) {
|
64 |
-
$_SERVER[GLOBAL_NS.'_ALLOWED'] = $_SERVER['ZENCACHE_ALLOWED'];
|
65 |
}
|
|
|
|
|
66 |
}
|
67 |
}
|
44 |
*/
|
45 |
public static function zenCacheConstants()
|
46 |
{
|
47 |
+
$_global_ns = strtoupper(GLOBAL_NS);
|
48 |
+
|
49 |
if (!($constants = get_defined_constants(true)) || empty($constants['user'])) {
|
50 |
return; // Nothing to do; i.e. no user-defined constants.
|
51 |
}
|
53 |
if (stripos($_constant, 'ZENCACHE_') !== 0) {
|
54 |
continue; // Nothing to do here.
|
55 |
}
|
56 |
+
if (!($_constant_sub_name = substr($_constant, 9))) {
|
57 |
continue; // Nothing to do here.
|
58 |
}
|
59 |
+
if (!defined($_global_ns.'_'.$_constant_sub_name)) {
|
60 |
+
define($_global_ns.'_'.$_constant_sub_name, $_value);
|
61 |
}
|
62 |
}
|
63 |
+
if (isset($_SERVER['ZENCACHE_ALLOWED']) && !isset($_SERVER[$_global_ns.'_ALLOWED'])) {
|
64 |
+
$_SERVER[$_global_ns.'_ALLOWED'] = $_SERVER['ZENCACHE_ALLOWED'];
|
|
|
|
|
65 |
}
|
66 |
+
|
67 |
+
unset($_constant, $_value, $_global_ns); // Housekeeping.
|
68 |
}
|
69 |
}
|
src/includes/classes/MenuPageOptions.php
CHANGED
@@ -786,7 +786,7 @@ class MenuPageOptions extends MenuPage
|
|
786 |
echo ' <hr />'."\n";
|
787 |
|
788 |
echo ' <h3>'.__('Auto-Cache User-Agent String', 'comet-cache').'</h3>'."\n";
|
789 |
-
echo ' <table style="width:100%;"><tr><td><input type="text" name="'.esc_attr(GLOBAL_NS).'[saveOptions][auto_cache_user_agent]" value="'.esc_attr($this->plugin->options['auto_cache_user_agent']).'" /></td><td style="width:1px; font-weight:bold; white-space:nowrap;">; '.esc_html(
|
790 |
echo ' <p class="info" style="display:block;">'.__('This is how the Auto-Cache Engine identifies itself when connecting to URLs. See <a href="http://en.wikipedia.org/wiki/User_agent" target="_blank">User Agent</a> in the Wikipedia.', 'comet-cache').'</p>'."\n";
|
791 |
echo ' </div>'."\n";
|
792 |
echo ' </div>'."\n";
|
@@ -865,6 +865,13 @@ class MenuPageOptions extends MenuPage
|
|
865 |
echo ' <p><input type="text" name="'.esc_attr(GLOBAL_NS).'[saveOptions][htmlc_cache_expiration_time]" value="'.esc_attr($this->plugin->options['htmlc_cache_expiration_time']).'" /></p>'."\n";
|
866 |
echo ' <p class="info" style="display:block;">'.__('<strong>Tip:</strong> the value that you specify here MUST be compatible with PHP\'s <a href="http://php.net/manual/en/function.strtotime.php" target="_blank" style="text-decoration:none;"><code>strtotime()</code></a> function. Examples: <code>2 hours</code>, <code>7 days</code>, <code>6 months</code>, <code>1 year</code>.', 'comet-cache').'</p>'."\n";
|
867 |
echo ' <p>'.sprintf(__('<strong>Note:</strong> This does NOT impact the overall cache expiration time that you configure with %1$s. It only impacts the sub-routines provided by the HTML Compressor. In fact, this expiration time is mostly irrelevant. The HTML Compressor uses an internal checksum, and it also checks <code>filemtime()</code> before using an existing cache file. The HTML Compressor class also handles the automatic cleanup of your cache directories to keep it from growing too large over time. Therefore, unless you have VERY little disk space there is no reason to set this to a lower value (even if your site changes dynamically quite often). If anything, you might like to increase this value which could help to further reduce server load. You can <a href="https://github.com/websharks/HTML-Compressor" target="_blank">learn more here</a>. We recommend setting this value to at least double that of your overall %1$s expiration time.', 'comet-cache'), esc_html(NAME)).'</p>'."\n";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
868 |
echo ' </div>'."\n";
|
869 |
echo ' </div>'."\n";
|
870 |
|
786 |
echo ' <hr />'."\n";
|
787 |
|
788 |
echo ' <h3>'.__('Auto-Cache User-Agent String', 'comet-cache').'</h3>'."\n";
|
789 |
+
echo ' <table style="width:100%;"><tr><td><input type="text" name="'.esc_attr(GLOBAL_NS).'[saveOptions][auto_cache_user_agent]" value="'.esc_attr($this->plugin->options['auto_cache_user_agent']).'" /></td><td style="width:1px; font-weight:bold; white-space:nowrap;">; '.esc_html(GLOBAL_NS.' '.VERSION).'</td></tr></table>'."\n";
|
790 |
echo ' <p class="info" style="display:block;">'.__('This is how the Auto-Cache Engine identifies itself when connecting to URLs. See <a href="http://en.wikipedia.org/wiki/User_agent" target="_blank">User Agent</a> in the Wikipedia.', 'comet-cache').'</p>'."\n";
|
791 |
echo ' </div>'."\n";
|
792 |
echo ' </div>'."\n";
|
865 |
echo ' <p><input type="text" name="'.esc_attr(GLOBAL_NS).'[saveOptions][htmlc_cache_expiration_time]" value="'.esc_attr($this->plugin->options['htmlc_cache_expiration_time']).'" /></p>'."\n";
|
866 |
echo ' <p class="info" style="display:block;">'.__('<strong>Tip:</strong> the value that you specify here MUST be compatible with PHP\'s <a href="http://php.net/manual/en/function.strtotime.php" target="_blank" style="text-decoration:none;"><code>strtotime()</code></a> function. Examples: <code>2 hours</code>, <code>7 days</code>, <code>6 months</code>, <code>1 year</code>.', 'comet-cache').'</p>'."\n";
|
867 |
echo ' <p>'.sprintf(__('<strong>Note:</strong> This does NOT impact the overall cache expiration time that you configure with %1$s. It only impacts the sub-routines provided by the HTML Compressor. In fact, this expiration time is mostly irrelevant. The HTML Compressor uses an internal checksum, and it also checks <code>filemtime()</code> before using an existing cache file. The HTML Compressor class also handles the automatic cleanup of your cache directories to keep it from growing too large over time. Therefore, unless you have VERY little disk space there is no reason to set this to a lower value (even if your site changes dynamically quite often). If anything, you might like to increase this value which could help to further reduce server load. You can <a href="https://github.com/websharks/HTML-Compressor" target="_blank">learn more here</a>. We recommend setting this value to at least double that of your overall %1$s expiration time.', 'comet-cache'), esc_html(NAME)).'</p>'."\n";
|
868 |
+
echo ' <hr />'."\n";
|
869 |
+
echo ' <h3>'.__('Enable HTML Compression for Logged-In Users?', 'comet-cache').'</h3>'."\n";
|
870 |
+
echo ' <p>'.__('Disabled by default. This setting is only applicable when caching for Logged-In Users is enabled. This should remain disabled for logged-in users because the user-specific cache has a much shorter Time To Live (TTL) which means their cache is likely to expire more quickly than a normal visitor. Rebuilding the HTML Compressor cache is time-consuming and doing it too frequently will actually slow things down for them. For example, if you\'re logged into the site as a user and you submit a form, that triggers a clearing of the cache for that user, including the HTML Compressor cache (when Logged-In User caching is enabled). Lots of little actions you take can result in a clearing of the cache. This shorter TTL is not ideal when running the HTML Compressor because it does a deep analysis of the page content and the associated resources in order to intelligently compress things. For logged-in users, it is better to skip that extra work and just cache the HTML source as-is, avoiding that extra overhead. In short, do NOT turn this on unless you know what you\'re doing.', 'comet-cache').'</p>'."\n";
|
871 |
+
echo ' <p><select name="'.esc_attr(GLOBAL_NS).'[saveOptions][htmlc_when_logged_in]">'."\n";
|
872 |
+
echo ' <option value="0"'.selected($this->plugin->options['htmlc_when_logged_in'], '0', false).'>'.__('No, disable HTML Compression for logged-in users (recommended).', 'comet-cache').'</option>'."\n";
|
873 |
+
echo ' <option value="postload"'.selected($this->plugin->options['htmlc_when_logged_in'], 'postload', false).'>'.__('Yes, enable HTML Compression for logged-in users.', 'comet-cache').'</option>'."\n";
|
874 |
+
echo ' </select></p>'."\n";
|
875 |
echo ' </div>'."\n";
|
876 |
echo ' </div>'."\n";
|
877 |
|
src/includes/classes/Plugin.php
CHANGED
@@ -179,6 +179,7 @@ class Plugin extends AbsBaseAp
|
|
179 |
'htmlc_compress_css_code',
|
180 |
'htmlc_compress_js_code',
|
181 |
'htmlc_compress_html_code',
|
|
|
182 |
|
183 |
'auto_cache_enable',
|
184 |
'auto_cache_max_time',
|
@@ -312,6 +313,7 @@ class Plugin extends AbsBaseAp
|
|
312 |
'htmlc_compress_css_code' => '1', // `0|1`.
|
313 |
'htmlc_compress_js_code' => '1', // `0|1`.
|
314 |
'htmlc_compress_html_code' => '1', // `0|1`.
|
|
|
315 |
|
316 |
/* Related to auto-cache engine. */
|
317 |
|
179 |
'htmlc_compress_css_code',
|
180 |
'htmlc_compress_js_code',
|
181 |
'htmlc_compress_html_code',
|
182 |
+
'htmlc_when_logged_in',
|
183 |
|
184 |
'auto_cache_enable',
|
185 |
'auto_cache_max_time',
|
313 |
'htmlc_compress_css_code' => '1', // `0|1`.
|
314 |
'htmlc_compress_js_code' => '1', // `0|1`.
|
315 |
'htmlc_compress_html_code' => '1', // `0|1`.
|
316 |
+
'htmlc_when_logged_in' => '0', // `0|1`; enable when logged in?
|
317 |
|
318 |
/* Related to auto-cache engine. */
|
319 |
|
src/includes/closures/Plugin/HtaccessUtils.php
CHANGED
@@ -13,7 +13,7 @@ $self->htaccess_marker = 'WmVuQ2FjaGU';
|
|
13 |
/*
|
14 |
* Plugin options that have associated htaccess rules.
|
15 |
*
|
16 |
-
* @since
|
17 |
*
|
18 |
* @return array Plugin options that have associated htaccess rules
|
19 |
*
|
@@ -134,7 +134,7 @@ $self->findHtaccessFile = function () use ($self) {
|
|
134 |
/*
|
135 |
* Determines if there are any plugin options enabled that require htaccess rules to be added.
|
136 |
*
|
137 |
-
* @since
|
138 |
*
|
139 |
* @return bool True when an option is enabled that requires htaccess rules, false otherwise.
|
140 |
*/
|
13 |
/*
|
14 |
* Plugin options that have associated htaccess rules.
|
15 |
*
|
16 |
+
* @since 160103 Improving `.htaccess` tweaks.
|
17 |
*
|
18 |
* @return array Plugin options that have associated htaccess rules
|
19 |
*
|
134 |
/*
|
135 |
* Determines if there are any plugin options enabled that require htaccess rules to be added.
|
136 |
*
|
137 |
+
* @since 160103 Improving `.htaccess` tweaks.
|
138 |
*
|
139 |
* @return bool True when an option is enabled that requires htaccess rules, false otherwise.
|
140 |
*/
|
src/includes/closures/Shared/CacheLockUtils.php
CHANGED
@@ -44,9 +44,12 @@ $self->cacheLock = function () use ($self) {
|
|
44 |
$inode_key = fileinode($wp_config_file);
|
45 |
$mutex = $tmp_dir.'/'.SLUG_TD.'-'.$inode_key.'.lock';
|
46 |
|
47 |
-
if (!($resource = fopen($mutex, '
|
48 |
throw new \Exception(__('Unable to obtain an exclusive lock.', 'comet-cache'));
|
49 |
}
|
|
|
|
|
|
|
50 |
return array('type' => 'flock', 'resource' => $resource);
|
51 |
};
|
52 |
|
44 |
$inode_key = fileinode($wp_config_file);
|
45 |
$mutex = $tmp_dir.'/'.SLUG_TD.'-'.$inode_key.'.lock';
|
46 |
|
47 |
+
if (!($resource = fopen($mutex, 'wb')) || !flock($resource, LOCK_EX)) {
|
48 |
throw new \Exception(__('Unable to obtain an exclusive lock.', 'comet-cache'));
|
49 |
}
|
50 |
+
|
51 |
+
@chmod($mutex, 0666); // See https://git.io/v2WAt
|
52 |
+
|
53 |
return array('type' => 'flock', 'resource' => $resource);
|
54 |
};
|
55 |
|
src/includes/closures/Shared/CachePathUtils.php
CHANGED
@@ -23,14 +23,16 @@ $self->cachePathRegexSuffixFrag = function ($regex_suffix_frag = CACHE_PATH_REGE
|
|
23 |
* @since 151220 Enhancing translation support.
|
24 |
*
|
25 |
* @return string Default cache-path suffix frag (regex).
|
|
|
|
|
26 |
*/
|
27 |
$self->cachePathRegexDefaultSuffixFrag = function () use ($self) {
|
28 |
if ($self->isPlugin() && !empty($GLOBALS['wp_rewrite'])){
|
29 |
$pagination_base = $GLOBALS['wp_rewrite']->pagination_base;
|
30 |
$comments_pagination_base = $GLOBALS['wp_rewrite']->comments_pagination_base;
|
31 |
-
return '(?:\/index)?(?:\.|\/(?:'.preg_quote($pagination_base, '/').'\/[0-9]+|'.preg_quote($comments_pagination_base, '/').'\-[0-9]+)[.\/])';
|
32 |
} else {
|
33 |
-
return '(?:\/index)?(?:\.|\/(?:page\/[0-9]+|comment\-page\-[0-9]+)[.\/])';
|
34 |
}
|
35 |
};
|
36 |
|
23 |
* @since 151220 Enhancing translation support.
|
24 |
*
|
25 |
* @return string Default cache-path suffix frag (regex).
|
26 |
+
*
|
27 |
+
* @TODO Use conditional to detect the AMP plugin (e.g., `isAmpInstalled()`) to avoid edge cases with the `|\/amp` regex here
|
28 |
*/
|
29 |
$self->cachePathRegexDefaultSuffixFrag = function () use ($self) {
|
30 |
if ($self->isPlugin() && !empty($GLOBALS['wp_rewrite'])){
|
31 |
$pagination_base = $GLOBALS['wp_rewrite']->pagination_base;
|
32 |
$comments_pagination_base = $GLOBALS['wp_rewrite']->comments_pagination_base;
|
33 |
+
return '(?:\/index|\/amp)?(?:\.|\/(?:'.preg_quote($pagination_base, '/').'\/[0-9]+|'.preg_quote($comments_pagination_base, '/').'\-[0-9]+)[.\/])';
|
34 |
} else {
|
35 |
+
return '(?:\/index|\/amp)?(?:\.|\/(?:page\/[0-9]+|comment\-page\-[0-9]+)[.\/])';
|
36 |
}
|
37 |
};
|
38 |
|
src/includes/plugin.php
CHANGED
@@ -12,7 +12,10 @@ if (!defined('WPINC')) {
|
|
12 |
require_once dirname(__FILE__).'/stub.php';
|
13 |
|
14 |
if (!Conflicts::check()) {
|
15 |
-
$GLOBALS[GLOBAL_NS]
|
|
|
|
|
|
|
16 |
add_action('plugins_loaded', function() {
|
17 |
require_once dirname(__FILE__).'/api.php';
|
18 |
});
|
12 |
require_once dirname(__FILE__).'/stub.php';
|
13 |
|
14 |
if (!Conflicts::check()) {
|
15 |
+
$GLOBALS[GLOBAL_NS] = new Plugin();
|
16 |
+
$GLOBALS['zencache'] = $GLOBALS[GLOBAL_NS]; // Back compat.
|
17 |
+
$GLOBALS['quick_cache'] = $GLOBALS[GLOBAL_NS]; // Back compat.
|
18 |
+
|
19 |
add_action('plugins_loaded', function() {
|
20 |
require_once dirname(__FILE__).'/api.php';
|
21 |
});
|
src/includes/stub.php
CHANGED
@@ -12,7 +12,7 @@ if (!defined('WPINC')) {
|
|
12 |
require_once dirname(dirname(__FILE__)).'/vendor/autoload.php';
|
13 |
require_once dirname(__FILE__).'/functions/i18n-utils.php';
|
14 |
|
15 |
-
${__FILE__}['version'] = '
|
16 |
${__FILE__}['plugin'] = dirname(dirname(dirname(__FILE__)));
|
17 |
${__FILE__}['plugin'] .= '/'.basename(${__FILE__}['plugin']).'.php';
|
18 |
${__FILE__}['ns_path'] = str_replace('\\', '/', __NAMESPACE__); // To dir/path.
|
12 |
require_once dirname(dirname(__FILE__)).'/vendor/autoload.php';
|
13 |
require_once dirname(__FILE__).'/functions/i18n-utils.php';
|
14 |
|
15 |
+
${__FILE__}['version'] = '160227'; //version//
|
16 |
${__FILE__}['plugin'] = dirname(dirname(dirname(__FILE__)));
|
17 |
${__FILE__}['plugin'] .= '/'.basename(${__FILE__}['plugin']).'.php';
|
18 |
${__FILE__}['ns_path'] = str_replace('\\', '/', __NAMESPACE__); // To dir/path.
|
src/includes/templates/advanced-cache.txt
CHANGED
@@ -217,6 +217,7 @@ if (!defined('COMET_CACHE_404_CACHE_FILENAME')) {
|
|
217 |
|
218 |
|
219 |
|
|
|
220 |
$GLOBALS[GLOBAL_NS.'_advanced_cache'] = new AdvancedCache();
|
221 |
$GLOBALS[GLOBAL_NS.'__advanced_cache'] = &$GLOBALS[GLOBAL_NS.'_advanced_cache'];
|
222 |
if (!isset($GLOBALS['zencache__advanced_cache'])) {
|
217 |
|
218 |
|
219 |
|
220 |
+
|
221 |
$GLOBALS[GLOBAL_NS.'_advanced_cache'] = new AdvancedCache();
|
222 |
$GLOBALS[GLOBAL_NS.'__advanced_cache'] = &$GLOBALS[GLOBAL_NS.'_advanced_cache'];
|
223 |
if (!isset($GLOBALS['zencache__advanced_cache'])) {
|
src/includes/translations/comet-cache.pot
CHANGED
@@ -2,9 +2,9 @@
|
|
2 |
# This file is distributed under the same license as the Comet Cache package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: Comet Cache
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/comet-cache\n"
|
7 |
-
"POT-Creation-Date: 2016-02-
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
@@ -835,7 +835,7 @@ msgstr ""
|
|
835 |
#: src/includes/classes/MenuPageOptions.php:853
|
836 |
#: src/includes/classes/MenuPageOptions.php:857
|
837 |
#: src/includes/classes/MenuPageOptions.php:862
|
838 |
-
#: src/includes/classes/MenuPageOptions.php:
|
839 |
msgid "<strong>Note:</strong> please remember that your entries here should be formatted as a line-delimited list; e.g., one exclusion pattern per line."
|
840 |
msgstr ""
|
841 |
|
@@ -1219,255 +1219,271 @@ msgstr ""
|
|
1219 |
msgid "<strong>Note:</strong> This does NOT impact the overall cache expiration time that you configure with %1$s. It only impacts the sub-routines provided by the HTML Compressor. In fact, this expiration time is mostly irrelevant. The HTML Compressor uses an internal checksum, and it also checks <code>filemtime()</code> before using an existing cache file. The HTML Compressor class also handles the automatic cleanup of your cache directories to keep it from growing too large over time. Therefore, unless you have VERY little disk space there is no reason to set this to a lower value (even if your site changes dynamically quite often). If anything, you might like to increase this value which could help to further reduce server load. You can <a href=\"https://github.com/websharks/HTML-Compressor\" target=\"_blank\">learn more here</a>. We recommend setting this value to at least double that of your overall %1$s expiration time."
|
1220 |
msgstr ""
|
1221 |
|
1222 |
-
#: src/includes/classes/MenuPageOptions.php:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1223 |
msgid "GZIP Compression"
|
1224 |
msgstr ""
|
1225 |
|
1226 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1227 |
msgid "<a href=\"https://developers.google.com/speed/articles/gzip\" target=\"_blank\">GZIP Compression</a> (Optional; Highly Recommended)"
|
1228 |
msgstr ""
|
1229 |
|
1230 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1231 |
msgid "You don't have to use an <code>.htaccess</code> file to enjoy the performance enhancements provided by this plugin; caching is handled automatically by WordPress/PHP alone. That being said, if you want to take advantage of the additional speed enhancements associated w/ GZIP compression (and we do recommend this), then you WILL need an <code>.htaccess</code> file to accomplish that part."
|
1232 |
msgstr ""
|
1233 |
|
1234 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1235 |
msgid "%1$s fully supports GZIP compression on its output. However, it does not handle GZIP compression directly. We purposely left GZIP compression out of this plugin, because GZIP compression is something that should really be enabled at the Apache level or inside your <code>php.ini</code> file. GZIP compression can be used for things like JavaScript and CSS files as well, so why bother turning it on for only WordPress-generated pages when you can enable GZIP at the server level and cover all the bases!"
|
1236 |
msgstr ""
|
1237 |
|
1238 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1239 |
msgid "If you want to enable GZIP, create an <code>.htaccess</code> file in your WordPress® installation directory, and put the following few lines in it. Alternatively, if you already have an <code>.htaccess</code> file, just add these lines to it, and that is all there is to it. GZIP is now enabled in the recommended way! See also: <a href=\"https://developers.google.com/speed/articles/gzip\" target=\"_blank\"><i class=\"si si-youtube-play\"></i> video about GZIP Compression</a>."
|
1240 |
msgstr ""
|
1241 |
|
1242 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1243 |
msgid "Static CDN Filters"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1247 |
msgid "Clear CDN Cache (Bump CDN Invalidation Counter)"
|
1248 |
msgstr ""
|
1249 |
|
1250 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1251 |
msgid "Clear CDN Cache"
|
1252 |
msgstr ""
|
1253 |
|
1254 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1255 |
msgid "Enable Static CDN Filters (e.g., MaxCDN/CloudFront)?"
|
1256 |
msgstr ""
|
1257 |
|
1258 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1259 |
msgid "This feature allows you to serve some and/or ALL static files on your site from a CDN of your choosing. This is made possible through content/URL filters exposed by WordPress and implemented by %1$s. All it requires is that you setup a CDN host name sourced by your WordPress installation domain. You enter that CDN host name below and %1$s will do the rest! Super easy, and it doesn't require any DNS changes either. :-) Please <a href=\"http://cometcache.com/r/static-cdn-filters-general-instructions/\" target=\"_blank\">click here</a> for a general set of instructions."
|
1260 |
msgstr ""
|
1261 |
|
1262 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1263 |
msgid "<strong>What's a CDN?</strong> It's a Content Delivery Network (i.e., a network of optimized servers) designed to cache static resources served from your site (e.g., JS/CSS/images and other static files) onto it's own servers, which are located strategically in various geographic areas around the world. Integrating a CDN for static files can dramatically improve the speed and performance of your site, lower the burden on your own server, and reduce latency associated with visitors attempting to access your site from geographic areas of the world that might be very far away from the primary location of your own web servers."
|
1264 |
msgstr ""
|
1265 |
|
1266 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1267 |
msgid "It appears that your server is running NGINX and does not support <code>.htaccess</code> rules. Please <a href=\"http://cometcache.com/r/kb-article-recommended-nginx-server-configuration/\" target=\"_new\">update your server configuration manually</a>. Note that updating your NGINX server configuration <em>before</em> enabling Static CDN Filters is recommended to prevent any <a href=\"http://cometcache.com/r/kb-article-what-are-cross-origin-request-blocked-cors-errors/\" target=\"_new\">CORS errors</a> with your CDN. If you've already updated your NGINX configuration, you can safely <a href=\"http://cometcache.com/r/kb-article-how-do-i-disable-the-nginx-htaccess-notice/\" target=\"_new\">ignore this message</a>."
|
1268 |
msgstr ""
|
1269 |
|
1270 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1271 |
msgid "No, I do NOT want CDN filters applied at runtime."
|
1272 |
msgstr ""
|
1273 |
|
1274 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1275 |
msgid "Yes, I want CDN filters applied w/ my configuration below."
|
1276 |
msgstr ""
|
1277 |
|
1278 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1279 |
msgid "CDN Host Name (Required)"
|
1280 |
msgstr ""
|
1281 |
|
1282 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1283 |
msgid "This field is really all that's necessary to get Static CDN Filters working! However, it does requires a little bit of work on your part. You need to setup and configure a CDN before you can fill in this field. Once you configure a CDN, you'll receive a host name (provided by your CDN), which you'll enter here; e.g., <code>js9dgjsl4llqpp.cloudfront.net</code>. We recommend <a href=\"http://cometcache.com/r/maxcdn/\" target=\"_blank\">MaxCDN</a>, <a href=\"http://cometcache.com/r/amazon-cloudfront/\" target=\"_blank\">Amazon CloudFront</a>, <a href=\"http://cometcache.com/r/keycdn/\" target=\"_blank\">KeyCDN</a>, and/or <a href=\"http://cometcache.com/r/cdn77/\" target=\"_blank\">CDN77</a> but this should work with many of the most popular CDNs. Please read <a href=\"http://cometcache.com/r/static-cdn-filters-general-instructions/\" target=\"_blank\">this article</a> for a general set of instructions. We also have a <a href=\"http://cometcache.com/r/static-cdn-filters-maxcdn/\" target=\"_blank\">MaxCDN tutorial</a>, <a href=\"http://cometcache.com/r/static-cdn-filters-cloudfront/\" target=\"_blank\">CloudFront tutorial</a>, <a href=\"http://cometcache.com/r/static-cdn-filters-keycdn/\" target=\"_blank\">KeyCDN tutorial</a>, and a <a href=\"http://cometcache.com/r/static-cdn-filters-cdn77/\" target=\"_blank\">CDN77 tutorial</a> to walk you through the process."
|
1284 |
msgstr ""
|
1285 |
|
1286 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1287 |
msgid "Multiple CDN Host Names for Domain Sharding and Multisite Networks (Optional)"
|
1288 |
msgstr ""
|
1289 |
|
1290 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1291 |
msgid "%1$s also supports multiple CDN Host Names for any given domain. Using multiple CDN Host Names (instead of just one, as seen above) is referred to as <strong><a href=\"http://cometcache.com/r/domain-sharding/\" target=\"_blank\">Domain Sharding</a></strong> (<a href=\"http://cometcache.com/r/domain-sharding/\" target=\"_blank\">click here to learn more</a>). If you configure multiple CDN Host Names (i.e., if you implement Domain Sharding), %1$s will use the first one that you list for static resources loaded in the HTML <code><head></code> section, the last one for static resources loaded in the footer, and it will choose one at random for all other static resource locations. Configuring multiple CDN Host Names can improve speed! This is a way for advanced site owners to work around concurrency limits in popular browsers; i.e., making it possible for browsers to download many more resources simultaneously, resulting in a faster overall completion time. In short, this tells the browser that your website will not be overloaded by concurrent requests, because static resources are in fact being served by a content-delivery network (i.e., multiple CDN host names). If you use this functionality for Domain Sharding, we suggest that you setup one CDN Distribution (aka: Pull Zone), and then create multiple CNAME records pointing to that distribution. You can enter each of your CNAMES in the field below, as instructed."
|
1292 |
msgstr ""
|
1293 |
|
1294 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1295 |
msgid "<strong>On WordPress Multisite Network installations</strong>, this field also allows you to configure different CDN Host Names for each domain (or sub-domain) that you run from a single installation of WordPress. For more information about configuring Static CDN Filters on a WordPress Multisite Network, see this tutorial: <a href=\"http://cometcache.com/r/static-cdn-filters-for-wordpress-multisite-networks/\" target=\"_blank\">Static CDN Filters for WordPress Multisite Networks</a>."
|
1296 |
msgstr ""
|
1297 |
|
1298 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1299 |
msgid "<strong>↑ Syntax:</strong> This is a line-delimited list of domain mappings. Each line should start with your WordPress domain name (e.g., <code>%1$s</code>), followed by an <code>=</code> sign, followed by a comma-delimited list of CDN Host Names associated with the domain in that line. If you're running a Multisite Network installation of WordPress, you might have multiple configuration lines. Otherwise, you should only need one line to configure multiple CDN Host Names for a standard WordPress installation."
|
1300 |
msgstr ""
|
1301 |
|
1302 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1303 |
msgid "CDN Supports HTTPS Connections?"
|
1304 |
msgstr ""
|
1305 |
|
1306 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1307 |
msgid "No, I don't serve content over https://; or I haven't configured my CDN w/ an SSL certificate."
|
1308 |
msgstr ""
|
1309 |
|
1310 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1311 |
msgid "Yes, I've configured my CDN w/ an SSL certificate; I need https:// enabled."
|
1312 |
msgstr ""
|
1313 |
|
1314 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1315 |
msgid "Additional Options (For Advanced Users)"
|
1316 |
msgstr ""
|
1317 |
|
1318 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1319 |
msgid "Everything else below is 100% completely optional; i.e., not required to enjoy the benefits of Static CDN Filters."
|
1320 |
msgstr ""
|
1321 |
|
1322 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1323 |
msgid "Whitelisted File Extensions (Optional; Comma-Delimited)"
|
1324 |
msgstr ""
|
1325 |
|
1326 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1327 |
msgid "If you leave this empty a default set of extensions are taken from WordPress itself. The default set of whitelisted file extensions includes everything supported by the WordPress media library."
|
1328 |
msgstr ""
|
1329 |
|
1330 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1331 |
msgid "Blacklisted File Extensions (Optional; Comma-Delimited)"
|
1332 |
msgstr ""
|
1333 |
|
1334 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1335 |
msgid "With or without a whitelist, you can force exclusions by explicitly blacklisting certain file extensions of your choosing. Please note, the <code>php</code> extension will never be considered a static resource; i.e., it is automatically blacklisted at all times."
|
1336 |
msgstr ""
|
1337 |
|
1338 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1339 |
msgid "Whitelisted URI Inclusion Patterns (Optional; One Per Line)"
|
1340 |
msgstr ""
|
1341 |
|
1342 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1343 |
msgid "<strong>Note:</strong> please remember that your entries here should be formatted as a line-delimited list; e.g., one inclusion pattern per line."
|
1344 |
msgstr ""
|
1345 |
|
1346 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1347 |
msgid "If provided, only local URIs matching one of the patterns you list here will be served from your CDN Host Name. URI patterns are caSe-insensitive. A wildcard <code>*</code> will match zero or more characters in any of your patterns. A caret <code>^</code> symbol will match zero or more characters that are NOT the <code>/</code> character. For instance, <code>*/wp-content/*</code> here would indicate that you only want to filter URLs that lead to files located inside the <code>wp-content</code> directory. Adding an additional line with <code>*/wp-includes/*</code> would filter URLs in the <code>wp-includes</code> directory also. <strong>If you leave this empty</strong>, ALL files matching a static file extension will be served from your CDN; i.e., the default behavior."
|
1348 |
msgstr ""
|
1349 |
|
1350 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1351 |
msgid "Please note that URI patterns are tested against a file's path (i.e., a file's URI, and NOT its full URL). A URI always starts with a leading <code>/</code>. To clarify, a URI is the portion of the URL which comes after the host name. For instance, given the following URL: <code>http://example.com/path/to/style.css?ver=3</code>, the URI you are matching against would be: <code>/path/to/style.css?ver=3</code>. To whitelist this URI, you could use a line that contains something like this: <code>/path/to/*.css*</code>"
|
1352 |
msgstr ""
|
1353 |
|
1354 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1355 |
msgid "Blacklisted URI Exclusion Patterns (Optional; One Per Line)"
|
1356 |
msgstr ""
|
1357 |
|
1358 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1359 |
msgid "With or without a whitelist, you can force exclusions by explicitly blacklisting certain URI patterns. URI patterns are caSe-insensitive. A wildcard <code>*</code> will match zero or more characters in any of your patterns. A caret <code>^</code> symbol will match zero or more characters that are NOT the <code>/</code> character. For instance, <code>*/wp-content/*/dynamic.pdf*</code> would exclude a file with the name <code>dynamic.pdf</code> located anywhere inside a sub-directory of <code>wp-content</code>."
|
1360 |
msgstr ""
|
1361 |
|
1362 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1363 |
msgid "Query String Invalidation Variable Name"
|
1364 |
msgstr ""
|
1365 |
|
1366 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1367 |
msgid "Each filtered URL (which then leads to your CDN) will include this query string variable as an easy way to invalidate the CDN cache at any time. Invalidating the CDN cache is simply a matter of changing the global invalidation counter (i.e., the value assigned to this query string variable). %1$s manages invalidations automatically; i.e., %1$s will automatically bump an internal counter each time you upgrade a WordPress component (e.g., a plugin, theme, or WP itself). Or, if you ask %1$s to invalidate the CDN cache (e.g., a manual clearing of the CDN cache); the internal counter is bumped then too. In short, %1$s handles cache invalidations for you reliably. This option simply allows you to customize the query string variable name which makes cache invalidations possible. <strong>Please note, the default value is adequate for most sites. You can change this if you like, but it's not necessary.</strong>"
|
1368 |
msgstr ""
|
1369 |
|
1370 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1371 |
msgid "<strong>Tip:</strong> You can also tell %1$s to automatically bump the CDN Invalidation Counter whenever you clear the cache manually. See: <strong>%1$s → Manual Cache Clearing → Clear the CDN Cache Too?</strong>"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1375 |
msgid "<strong>Note:</strong> If you empty this field, it will effectively disable the %1$s invalidation system for Static CDN Filters; i.e., the query string variable will NOT be included if you do not supply a variable name."
|
1376 |
msgstr ""
|
1377 |
|
1378 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1379 |
msgid "Dynamic Version Salt"
|
1380 |
msgstr ""
|
1381 |
|
1382 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1383 |
msgid "<i class=\"si si-flask\"></i> <span style=\"display:inline-block; padding:5px; border-radius:3px; background:#FFFFFF; color:#354913;\"><span style=\"font-weight:bold; font-size:80%;\">GEEK ALERT</span></span> This is for VERY advanced users only..."
|
1384 |
msgstr ""
|
1385 |
|
1386 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1387 |
msgid "<em>Note: Understanding the %1$s <a href=\"http://cometcache.com/r/kb-branched-cache-structure/\" target=\"_blank\">Branched Cache Structure</a> is a prerequisite to understanding how Dynamic Version Salts are added to the mix.</em>"
|
1388 |
msgstr ""
|
1389 |
|
1390 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1391 |
msgid "A Version Salt gives you the ability to dynamically create multiple variations of the cache, and those dynamic variations will be served on subsequent visits; e.g., if a visitor has a specific cookie (of a certain value) they will see pages which were cached with that version (i.e., w/ that Version Salt: the value of the cookie). A Version Salt can really be anything."
|
1392 |
msgstr ""
|
1393 |
|
1394 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1395 |
msgid "A Version Salt can be a single variable like <code>$_COOKIE['my_cookie']</code>, or it can be a combination of multiple variables, like <code>$_COOKIE['my_cookie'].$_COOKIE['my_other_cookie']</code>. (When using multiple variables, please separate them with a dot, as shown in the example.)"
|
1396 |
msgstr ""
|
1397 |
|
1398 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1399 |
msgid "Experts could even use PHP ternary expressions that evaluate into something. For example: <code>((preg_match('/iPhone/i', $_SERVER['HTTP_USER_AGENT'])) ? 'iPhones' : '')</code>. This would force a separate version of the cache to be created for iPhones (e.g., <code>/cache/PROTOCOL/HOST/REQUEST-URI.v/iPhones.html</code>)."
|
1400 |
msgstr ""
|
1401 |
|
1402 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1403 |
msgid "For more documentation, please see <a href=\"http://cometcache.com/r/kb-dynamic-version-salts/\" target=\"_blank\">Dynamic Version Salts</a>."
|
1404 |
msgstr ""
|
1405 |
|
1406 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1407 |
msgid "Create a Dynamic Version Salt For %1$s? <span style=\"font-size:90%%; opacity:0.5;\">150%% OPTIONAL</span>"
|
1408 |
msgstr ""
|
1409 |
|
1410 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1411 |
msgid "<a href=\"http://php.net/manual/en/language.variables.superglobals.php\" target=\"_blank\">Super Globals</a> work here; <a href=\"http://codex.wordpress.org/Editing_wp-config.php#table_prefix\" target=\"_blank\"><code>$GLOBALS['table_prefix']</code></a> is a popular one.<br />Or, perhaps a PHP Constant defined in <code>/wp-config.php</code>; such as <code>WPLANG</code> or <code>DB_HOST</code>."
|
1412 |
msgstr ""
|
1413 |
|
1414 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1415 |
msgid "<strong>Important:</strong> your Version Salt is scanned for PHP syntax errors via <a href=\"http://phpcodechecker.com/\" target=\"_blank\"><code>phpCodeChecker.com</code></a>. If errors are found, you'll receive a notice in the Dashboard."
|
1416 |
msgstr ""
|
1417 |
|
1418 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1419 |
msgid "If you've enabled a separate cache for each user (optional) that's perfectly OK. A Version Salt works with user caching too."
|
1420 |
msgstr ""
|
1421 |
|
1422 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1423 |
msgid "Theme/Plugin Developers"
|
1424 |
msgstr ""
|
1425 |
|
1426 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1427 |
msgid "Developing a Theme or Plugin for WordPress?"
|
1428 |
msgstr ""
|
1429 |
|
1430 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1431 |
msgid "<strong>Tip:</strong> %1$s can be disabled temporarily. If you're a theme/plugin developer, you can set a flag within your PHP code to disable the cache engine at runtime. Perhaps on a specific page, or in a specific scenario. In your PHP script, set: <code>$_SERVER['COMET_CACHE_ALLOWED'] = FALSE;</code> or <code>define('COMET_CACHE_ALLOWED', FALSE)</code>. %1$s is also compatible with: <code>define('DONOTCACHEPAGE', TRUE)</code>. It does't matter where or when you define one of these, because %1$s is the last thing to run before script execution ends."
|
1432 |
msgstr ""
|
1433 |
|
1434 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1435 |
msgid "Writing \"Advanced Cache\" Plugins Specifically for %1$s"
|
1436 |
msgstr ""
|
1437 |
|
1438 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1439 |
msgid "Theme/plugin developers can take advantage of the %1$s plugin architecture by creating PHP files inside this special directory: <code>/wp-content/ac-plugins/</code>. There is an <a href=\"http://cometcache.com/r/ac-plugin-example/\" target=\"_blank\">example plugin file @ GitHub</a> (please review it carefully and ask questions). If you develop a plugin for %1$s, please share it with the community by publishing it in the plugins respository at WordPress.org."
|
1440 |
msgstr ""
|
1441 |
|
1442 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1443 |
msgid "<strong>Why does %1$s have it's own plugin architecture?</strong> WordPress loads the <code>advanced-cache.php</code> drop-in file (for caching purposes) very early-on; before any other plugins or a theme. For this reason, %1$s implements it's own watered-down version of functions like <code>add_action()</code>, <code>do_action()</code>, <code>add_filter()</code>, <code>apply_filters()</code>."
|
1444 |
msgstr ""
|
1445 |
|
1446 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1447 |
msgid "Import/Export Options"
|
1448 |
msgstr ""
|
1449 |
|
1450 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1451 |
msgid "Import Options from Another %1$s Installation?"
|
1452 |
msgstr ""
|
1453 |
|
1454 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1455 |
msgid "Upload your <code>%1$s-options.json</code> file and click \"Save All Changes\" below. The options provided by your import file will override any that exist currently."
|
1456 |
msgstr ""
|
1457 |
|
1458 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1459 |
msgid "Export Existing Options from this %1$s Installation?"
|
1460 |
msgstr ""
|
1461 |
|
1462 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1463 |
msgid "%1$s-options.json"
|
1464 |
msgstr ""
|
1465 |
|
1466 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1467 |
msgid "Download your existing options and import them all into another %1$s installation; saves time on future installs."
|
1468 |
msgstr ""
|
1469 |
|
1470 |
-
#: src/includes/classes/MenuPageOptions.php:
|
1471 |
msgid "Save All Changes"
|
1472 |
msgstr ""
|
1473 |
|
2 |
# This file is distributed under the same license as the Comet Cache package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: Comet Cache 160227\n"
|
6 |
"Report-Msgid-Bugs-To: http://wordpress.org/tag/comet-cache\n"
|
7 |
+
"POT-Creation-Date: 2016-02-27 20:13:18+00:00\n"
|
8 |
"MIME-Version: 1.0\n"
|
9 |
"Content-Type: text/plain; charset=UTF-8\n"
|
10 |
"Content-Transfer-Encoding: 8bit\n"
|
835 |
#: src/includes/classes/MenuPageOptions.php:853
|
836 |
#: src/includes/classes/MenuPageOptions.php:857
|
837 |
#: src/includes/classes/MenuPageOptions.php:862
|
838 |
+
#: src/includes/classes/MenuPageOptions.php:986
|
839 |
msgid "<strong>Note:</strong> please remember that your entries here should be formatted as a line-delimited list; e.g., one exclusion pattern per line."
|
840 |
msgstr ""
|
841 |
|
1219 |
msgid "<strong>Note:</strong> This does NOT impact the overall cache expiration time that you configure with %1$s. It only impacts the sub-routines provided by the HTML Compressor. In fact, this expiration time is mostly irrelevant. The HTML Compressor uses an internal checksum, and it also checks <code>filemtime()</code> before using an existing cache file. The HTML Compressor class also handles the automatic cleanup of your cache directories to keep it from growing too large over time. Therefore, unless you have VERY little disk space there is no reason to set this to a lower value (even if your site changes dynamically quite often). If anything, you might like to increase this value which could help to further reduce server load. You can <a href=\"https://github.com/websharks/HTML-Compressor\" target=\"_blank\">learn more here</a>. We recommend setting this value to at least double that of your overall %1$s expiration time."
|
1220 |
msgstr ""
|
1221 |
|
1222 |
+
#: src/includes/classes/MenuPageOptions.php:869
|
1223 |
+
msgid "Enable HTML Compression for Logged-In Users?"
|
1224 |
+
msgstr ""
|
1225 |
+
|
1226 |
+
#: src/includes/classes/MenuPageOptions.php:870
|
1227 |
+
msgid "Disabled by default. This setting is only applicable when caching for Logged-In Users is enabled. This should remain disabled for logged-in users because the user-specific cache has a much shorter Time To Live (TTL) which means their cache is likely to expire more quickly than a normal visitor. Rebuilding the HTML Compressor cache is time-consuming and doing it too frequently will actually slow things down for them. For example, if you're logged into the site as a user and you submit a form, that triggers a clearing of the cache for that user, including the HTML Compressor cache (when Logged-In User caching is enabled). Lots of little actions you take can result in a clearing of the cache. This shorter TTL is not ideal when running the HTML Compressor because it does a deep analysis of the page content and the associated resources in order to intelligently compress things. For logged-in users, it is better to skip that extra work and just cache the HTML source as-is, avoiding that extra overhead. In short, do NOT turn this on unless you know what you're doing."
|
1228 |
+
msgstr ""
|
1229 |
+
|
1230 |
+
#: src/includes/classes/MenuPageOptions.php:872
|
1231 |
+
msgid "No, disable HTML Compression for logged-in users (recommended)."
|
1232 |
+
msgstr ""
|
1233 |
+
|
1234 |
+
#: src/includes/classes/MenuPageOptions.php:873
|
1235 |
+
msgid "Yes, enable HTML Compression for logged-in users."
|
1236 |
+
msgstr ""
|
1237 |
+
|
1238 |
+
#: src/includes/classes/MenuPageOptions.php:885
|
1239 |
msgid "GZIP Compression"
|
1240 |
msgstr ""
|
1241 |
|
1242 |
+
#: src/includes/classes/MenuPageOptions.php:890
|
1243 |
msgid "<a href=\"https://developers.google.com/speed/articles/gzip\" target=\"_blank\">GZIP Compression</a> (Optional; Highly Recommended)"
|
1244 |
msgstr ""
|
1245 |
|
1246 |
+
#: src/includes/classes/MenuPageOptions.php:891
|
1247 |
msgid "You don't have to use an <code>.htaccess</code> file to enjoy the performance enhancements provided by this plugin; caching is handled automatically by WordPress/PHP alone. That being said, if you want to take advantage of the additional speed enhancements associated w/ GZIP compression (and we do recommend this), then you WILL need an <code>.htaccess</code> file to accomplish that part."
|
1248 |
msgstr ""
|
1249 |
|
1250 |
+
#: src/includes/classes/MenuPageOptions.php:892
|
1251 |
msgid "%1$s fully supports GZIP compression on its output. However, it does not handle GZIP compression directly. We purposely left GZIP compression out of this plugin, because GZIP compression is something that should really be enabled at the Apache level or inside your <code>php.ini</code> file. GZIP compression can be used for things like JavaScript and CSS files as well, so why bother turning it on for only WordPress-generated pages when you can enable GZIP at the server level and cover all the bases!"
|
1252 |
msgstr ""
|
1253 |
|
1254 |
+
#: src/includes/classes/MenuPageOptions.php:893
|
1255 |
msgid "If you want to enable GZIP, create an <code>.htaccess</code> file in your WordPress® installation directory, and put the following few lines in it. Alternatively, if you already have an <code>.htaccess</code> file, just add these lines to it, and that is all there is to it. GZIP is now enabled in the recommended way! See also: <a href=\"https://developers.google.com/speed/articles/gzip\" target=\"_blank\"><i class=\"si si-youtube-play\"></i> video about GZIP Compression</a>."
|
1256 |
msgstr ""
|
1257 |
|
1258 |
+
#: src/includes/classes/MenuPageOptions.php:907
|
1259 |
msgid "Static CDN Filters"
|
1260 |
msgstr ""
|
1261 |
|
1262 |
+
#: src/includes/classes/MenuPageOptions.php:911
|
1263 |
msgid "Clear CDN Cache (Bump CDN Invalidation Counter)"
|
1264 |
msgstr ""
|
1265 |
|
1266 |
+
#: src/includes/classes/MenuPageOptions.php:911
|
1267 |
msgid "Clear CDN Cache"
|
1268 |
msgstr ""
|
1269 |
|
1270 |
+
#: src/includes/classes/MenuPageOptions.php:912
|
1271 |
msgid "Enable Static CDN Filters (e.g., MaxCDN/CloudFront)?"
|
1272 |
msgstr ""
|
1273 |
|
1274 |
+
#: src/includes/classes/MenuPageOptions.php:913
|
1275 |
msgid "This feature allows you to serve some and/or ALL static files on your site from a CDN of your choosing. This is made possible through content/URL filters exposed by WordPress and implemented by %1$s. All it requires is that you setup a CDN host name sourced by your WordPress installation domain. You enter that CDN host name below and %1$s will do the rest! Super easy, and it doesn't require any DNS changes either. :-) Please <a href=\"http://cometcache.com/r/static-cdn-filters-general-instructions/\" target=\"_blank\">click here</a> for a general set of instructions."
|
1276 |
msgstr ""
|
1277 |
|
1278 |
+
#: src/includes/classes/MenuPageOptions.php:914
|
1279 |
msgid "<strong>What's a CDN?</strong> It's a Content Delivery Network (i.e., a network of optimized servers) designed to cache static resources served from your site (e.g., JS/CSS/images and other static files) onto it's own servers, which are located strategically in various geographic areas around the world. Integrating a CDN for static files can dramatically improve the speed and performance of your site, lower the burden on your own server, and reduce latency associated with visitors attempting to access your site from geographic areas of the world that might be very far away from the primary location of your own web servers."
|
1280 |
msgstr ""
|
1281 |
|
1282 |
+
#: src/includes/classes/MenuPageOptions.php:917
|
1283 |
msgid "It appears that your server is running NGINX and does not support <code>.htaccess</code> rules. Please <a href=\"http://cometcache.com/r/kb-article-recommended-nginx-server-configuration/\" target=\"_new\">update your server configuration manually</a>. Note that updating your NGINX server configuration <em>before</em> enabling Static CDN Filters is recommended to prevent any <a href=\"http://cometcache.com/r/kb-article-what-are-cross-origin-request-blocked-cors-errors/\" target=\"_new\">CORS errors</a> with your CDN. If you've already updated your NGINX configuration, you can safely <a href=\"http://cometcache.com/r/kb-article-how-do-i-disable-the-nginx-htaccess-notice/\" target=\"_new\">ignore this message</a>."
|
1284 |
msgstr ""
|
1285 |
|
1286 |
+
#: src/includes/classes/MenuPageOptions.php:921
|
1287 |
msgid "No, I do NOT want CDN filters applied at runtime."
|
1288 |
msgstr ""
|
1289 |
|
1290 |
+
#: src/includes/classes/MenuPageOptions.php:922
|
1291 |
msgid "Yes, I want CDN filters applied w/ my configuration below."
|
1292 |
msgstr ""
|
1293 |
|
1294 |
+
#: src/includes/classes/MenuPageOptions.php:929
|
1295 |
msgid "CDN Host Name (Required)"
|
1296 |
msgstr ""
|
1297 |
|
1298 |
+
#: src/includes/classes/MenuPageOptions.php:935
|
1299 |
msgid "This field is really all that's necessary to get Static CDN Filters working! However, it does requires a little bit of work on your part. You need to setup and configure a CDN before you can fill in this field. Once you configure a CDN, you'll receive a host name (provided by your CDN), which you'll enter here; e.g., <code>js9dgjsl4llqpp.cloudfront.net</code>. We recommend <a href=\"http://cometcache.com/r/maxcdn/\" target=\"_blank\">MaxCDN</a>, <a href=\"http://cometcache.com/r/amazon-cloudfront/\" target=\"_blank\">Amazon CloudFront</a>, <a href=\"http://cometcache.com/r/keycdn/\" target=\"_blank\">KeyCDN</a>, and/or <a href=\"http://cometcache.com/r/cdn77/\" target=\"_blank\">CDN77</a> but this should work with many of the most popular CDNs. Please read <a href=\"http://cometcache.com/r/static-cdn-filters-general-instructions/\" target=\"_blank\">this article</a> for a general set of instructions. We also have a <a href=\"http://cometcache.com/r/static-cdn-filters-maxcdn/\" target=\"_blank\">MaxCDN tutorial</a>, <a href=\"http://cometcache.com/r/static-cdn-filters-cloudfront/\" target=\"_blank\">CloudFront tutorial</a>, <a href=\"http://cometcache.com/r/static-cdn-filters-keycdn/\" target=\"_blank\">KeyCDN tutorial</a>, and a <a href=\"http://cometcache.com/r/static-cdn-filters-cdn77/\" target=\"_blank\">CDN77 tutorial</a> to walk you through the process."
|
1300 |
msgstr ""
|
1301 |
|
1302 |
+
#: src/includes/classes/MenuPageOptions.php:940
|
1303 |
msgid "Multiple CDN Host Names for Domain Sharding and Multisite Networks (Optional)"
|
1304 |
msgstr ""
|
1305 |
|
1306 |
+
#: src/includes/classes/MenuPageOptions.php:941
|
1307 |
msgid "%1$s also supports multiple CDN Host Names for any given domain. Using multiple CDN Host Names (instead of just one, as seen above) is referred to as <strong><a href=\"http://cometcache.com/r/domain-sharding/\" target=\"_blank\">Domain Sharding</a></strong> (<a href=\"http://cometcache.com/r/domain-sharding/\" target=\"_blank\">click here to learn more</a>). If you configure multiple CDN Host Names (i.e., if you implement Domain Sharding), %1$s will use the first one that you list for static resources loaded in the HTML <code><head></code> section, the last one for static resources loaded in the footer, and it will choose one at random for all other static resource locations. Configuring multiple CDN Host Names can improve speed! This is a way for advanced site owners to work around concurrency limits in popular browsers; i.e., making it possible for browsers to download many more resources simultaneously, resulting in a faster overall completion time. In short, this tells the browser that your website will not be overloaded by concurrent requests, because static resources are in fact being served by a content-delivery network (i.e., multiple CDN host names). If you use this functionality for Domain Sharding, we suggest that you setup one CDN Distribution (aka: Pull Zone), and then create multiple CNAME records pointing to that distribution. You can enter each of your CNAMES in the field below, as instructed."
|
1308 |
msgstr ""
|
1309 |
|
1310 |
+
#: src/includes/classes/MenuPageOptions.php:942
|
1311 |
msgid "<strong>On WordPress Multisite Network installations</strong>, this field also allows you to configure different CDN Host Names for each domain (or sub-domain) that you run from a single installation of WordPress. For more information about configuring Static CDN Filters on a WordPress Multisite Network, see this tutorial: <a href=\"http://cometcache.com/r/static-cdn-filters-for-wordpress-multisite-networks/\" target=\"_blank\">Static CDN Filters for WordPress Multisite Networks</a>."
|
1312 |
msgstr ""
|
1313 |
|
1314 |
+
#: src/includes/classes/MenuPageOptions.php:944
|
1315 |
msgid "<strong>↑ Syntax:</strong> This is a line-delimited list of domain mappings. Each line should start with your WordPress domain name (e.g., <code>%1$s</code>), followed by an <code>=</code> sign, followed by a comma-delimited list of CDN Host Names associated with the domain in that line. If you're running a Multisite Network installation of WordPress, you might have multiple configuration lines. Otherwise, you should only need one line to configure multiple CDN Host Names for a standard WordPress installation."
|
1316 |
msgstr ""
|
1317 |
|
1318 |
+
#: src/includes/classes/MenuPageOptions.php:948
|
1319 |
msgid "CDN Supports HTTPS Connections?"
|
1320 |
msgstr ""
|
1321 |
|
1322 |
+
#: src/includes/classes/MenuPageOptions.php:950
|
1323 |
msgid "No, I don't serve content over https://; or I haven't configured my CDN w/ an SSL certificate."
|
1324 |
msgstr ""
|
1325 |
|
1326 |
+
#: src/includes/classes/MenuPageOptions.php:951
|
1327 |
msgid "Yes, I've configured my CDN w/ an SSL certificate; I need https:// enabled."
|
1328 |
msgstr ""
|
1329 |
|
1330 |
+
#: src/includes/classes/MenuPageOptions.php:958
|
1331 |
msgid "Additional Options (For Advanced Users)"
|
1332 |
msgstr ""
|
1333 |
|
1334 |
+
#: src/includes/classes/MenuPageOptions.php:963
|
1335 |
msgid "Everything else below is 100% completely optional; i.e., not required to enjoy the benefits of Static CDN Filters."
|
1336 |
msgstr ""
|
1337 |
|
1338 |
+
#: src/includes/classes/MenuPageOptions.php:967
|
1339 |
msgid "Whitelisted File Extensions (Optional; Comma-Delimited)"
|
1340 |
msgstr ""
|
1341 |
|
1342 |
+
#: src/includes/classes/MenuPageOptions.php:969
|
1343 |
msgid "If you leave this empty a default set of extensions are taken from WordPress itself. The default set of whitelisted file extensions includes everything supported by the WordPress media library."
|
1344 |
msgstr ""
|
1345 |
|
1346 |
+
#: src/includes/classes/MenuPageOptions.php:971
|
1347 |
msgid "Blacklisted File Extensions (Optional; Comma-Delimited)"
|
1348 |
msgstr ""
|
1349 |
|
1350 |
+
#: src/includes/classes/MenuPageOptions.php:973
|
1351 |
msgid "With or without a whitelist, you can force exclusions by explicitly blacklisting certain file extensions of your choosing. Please note, the <code>php</code> extension will never be considered a static resource; i.e., it is automatically blacklisted at all times."
|
1352 |
msgstr ""
|
1353 |
|
1354 |
+
#: src/includes/classes/MenuPageOptions.php:977
|
1355 |
msgid "Whitelisted URI Inclusion Patterns (Optional; One Per Line)"
|
1356 |
msgstr ""
|
1357 |
|
1358 |
+
#: src/includes/classes/MenuPageOptions.php:979
|
1359 |
msgid "<strong>Note:</strong> please remember that your entries here should be formatted as a line-delimited list; e.g., one inclusion pattern per line."
|
1360 |
msgstr ""
|
1361 |
|
1362 |
+
#: src/includes/classes/MenuPageOptions.php:980
|
1363 |
msgid "If provided, only local URIs matching one of the patterns you list here will be served from your CDN Host Name. URI patterns are caSe-insensitive. A wildcard <code>*</code> will match zero or more characters in any of your patterns. A caret <code>^</code> symbol will match zero or more characters that are NOT the <code>/</code> character. For instance, <code>*/wp-content/*</code> here would indicate that you only want to filter URLs that lead to files located inside the <code>wp-content</code> directory. Adding an additional line with <code>*/wp-includes/*</code> would filter URLs in the <code>wp-includes</code> directory also. <strong>If you leave this empty</strong>, ALL files matching a static file extension will be served from your CDN; i.e., the default behavior."
|
1364 |
msgstr ""
|
1365 |
|
1366 |
+
#: src/includes/classes/MenuPageOptions.php:981
|
1367 |
msgid "Please note that URI patterns are tested against a file's path (i.e., a file's URI, and NOT its full URL). A URI always starts with a leading <code>/</code>. To clarify, a URI is the portion of the URL which comes after the host name. For instance, given the following URL: <code>http://example.com/path/to/style.css?ver=3</code>, the URI you are matching against would be: <code>/path/to/style.css?ver=3</code>. To whitelist this URI, you could use a line that contains something like this: <code>/path/to/*.css*</code>"
|
1368 |
msgstr ""
|
1369 |
|
1370 |
+
#: src/includes/classes/MenuPageOptions.php:983
|
1371 |
msgid "Blacklisted URI Exclusion Patterns (Optional; One Per Line)"
|
1372 |
msgstr ""
|
1373 |
|
1374 |
+
#: src/includes/classes/MenuPageOptions.php:985
|
1375 |
msgid "With or without a whitelist, you can force exclusions by explicitly blacklisting certain URI patterns. URI patterns are caSe-insensitive. A wildcard <code>*</code> will match zero or more characters in any of your patterns. A caret <code>^</code> symbol will match zero or more characters that are NOT the <code>/</code> character. For instance, <code>*/wp-content/*/dynamic.pdf*</code> would exclude a file with the name <code>dynamic.pdf</code> located anywhere inside a sub-directory of <code>wp-content</code>."
|
1376 |
msgstr ""
|
1377 |
|
1378 |
+
#: src/includes/classes/MenuPageOptions.php:990
|
1379 |
msgid "Query String Invalidation Variable Name"
|
1380 |
msgstr ""
|
1381 |
|
1382 |
+
#: src/includes/classes/MenuPageOptions.php:992
|
1383 |
msgid "Each filtered URL (which then leads to your CDN) will include this query string variable as an easy way to invalidate the CDN cache at any time. Invalidating the CDN cache is simply a matter of changing the global invalidation counter (i.e., the value assigned to this query string variable). %1$s manages invalidations automatically; i.e., %1$s will automatically bump an internal counter each time you upgrade a WordPress component (e.g., a plugin, theme, or WP itself). Or, if you ask %1$s to invalidate the CDN cache (e.g., a manual clearing of the CDN cache); the internal counter is bumped then too. In short, %1$s handles cache invalidations for you reliably. This option simply allows you to customize the query string variable name which makes cache invalidations possible. <strong>Please note, the default value is adequate for most sites. You can change this if you like, but it's not necessary.</strong>"
|
1384 |
msgstr ""
|
1385 |
|
1386 |
+
#: src/includes/classes/MenuPageOptions.php:993
|
1387 |
msgid "<strong>Tip:</strong> You can also tell %1$s to automatically bump the CDN Invalidation Counter whenever you clear the cache manually. See: <strong>%1$s → Manual Cache Clearing → Clear the CDN Cache Too?</strong>"
|
1388 |
msgstr ""
|
1389 |
|
1390 |
+
#: src/includes/classes/MenuPageOptions.php:994
|
1391 |
msgid "<strong>Note:</strong> If you empty this field, it will effectively disable the %1$s invalidation system for Static CDN Filters; i.e., the query string variable will NOT be included if you do not supply a variable name."
|
1392 |
msgstr ""
|
1393 |
|
1394 |
+
#: src/includes/classes/MenuPageOptions.php:1007
|
1395 |
msgid "Dynamic Version Salt"
|
1396 |
msgstr ""
|
1397 |
|
1398 |
+
#: src/includes/classes/MenuPageOptions.php:1012
|
1399 |
msgid "<i class=\"si si-flask\"></i> <span style=\"display:inline-block; padding:5px; border-radius:3px; background:#FFFFFF; color:#354913;\"><span style=\"font-weight:bold; font-size:80%;\">GEEK ALERT</span></span> This is for VERY advanced users only..."
|
1400 |
msgstr ""
|
1401 |
|
1402 |
+
#: src/includes/classes/MenuPageOptions.php:1013
|
1403 |
msgid "<em>Note: Understanding the %1$s <a href=\"http://cometcache.com/r/kb-branched-cache-structure/\" target=\"_blank\">Branched Cache Structure</a> is a prerequisite to understanding how Dynamic Version Salts are added to the mix.</em>"
|
1404 |
msgstr ""
|
1405 |
|
1406 |
+
#: src/includes/classes/MenuPageOptions.php:1014
|
1407 |
msgid "A Version Salt gives you the ability to dynamically create multiple variations of the cache, and those dynamic variations will be served on subsequent visits; e.g., if a visitor has a specific cookie (of a certain value) they will see pages which were cached with that version (i.e., w/ that Version Salt: the value of the cookie). A Version Salt can really be anything."
|
1408 |
msgstr ""
|
1409 |
|
1410 |
+
#: src/includes/classes/MenuPageOptions.php:1015
|
1411 |
msgid "A Version Salt can be a single variable like <code>$_COOKIE['my_cookie']</code>, or it can be a combination of multiple variables, like <code>$_COOKIE['my_cookie'].$_COOKIE['my_other_cookie']</code>. (When using multiple variables, please separate them with a dot, as shown in the example.)"
|
1412 |
msgstr ""
|
1413 |
|
1414 |
+
#: src/includes/classes/MenuPageOptions.php:1016
|
1415 |
msgid "Experts could even use PHP ternary expressions that evaluate into something. For example: <code>((preg_match('/iPhone/i', $_SERVER['HTTP_USER_AGENT'])) ? 'iPhones' : '')</code>. This would force a separate version of the cache to be created for iPhones (e.g., <code>/cache/PROTOCOL/HOST/REQUEST-URI.v/iPhones.html</code>)."
|
1416 |
msgstr ""
|
1417 |
|
1418 |
+
#: src/includes/classes/MenuPageOptions.php:1017
|
1419 |
msgid "For more documentation, please see <a href=\"http://cometcache.com/r/kb-dynamic-version-salts/\" target=\"_blank\">Dynamic Version Salts</a>."
|
1420 |
msgstr ""
|
1421 |
|
1422 |
+
#: src/includes/classes/MenuPageOptions.php:1019
|
1423 |
msgid "Create a Dynamic Version Salt For %1$s? <span style=\"font-size:90%%; opacity:0.5;\">150%% OPTIONAL</span>"
|
1424 |
msgstr ""
|
1425 |
|
1426 |
+
#: src/includes/classes/MenuPageOptions.php:1021
|
1427 |
msgid "<a href=\"http://php.net/manual/en/language.variables.superglobals.php\" target=\"_blank\">Super Globals</a> work here; <a href=\"http://codex.wordpress.org/Editing_wp-config.php#table_prefix\" target=\"_blank\"><code>$GLOBALS['table_prefix']</code></a> is a popular one.<br />Or, perhaps a PHP Constant defined in <code>/wp-config.php</code>; such as <code>WPLANG</code> or <code>DB_HOST</code>."
|
1428 |
msgstr ""
|
1429 |
|
1430 |
+
#: src/includes/classes/MenuPageOptions.php:1022
|
1431 |
msgid "<strong>Important:</strong> your Version Salt is scanned for PHP syntax errors via <a href=\"http://phpcodechecker.com/\" target=\"_blank\"><code>phpCodeChecker.com</code></a>. If errors are found, you'll receive a notice in the Dashboard."
|
1432 |
msgstr ""
|
1433 |
|
1434 |
+
#: src/includes/classes/MenuPageOptions.php:1023
|
1435 |
msgid "If you've enabled a separate cache for each user (optional) that's perfectly OK. A Version Salt works with user caching too."
|
1436 |
msgstr ""
|
1437 |
|
1438 |
+
#: src/includes/classes/MenuPageOptions.php:1033
|
1439 |
msgid "Theme/Plugin Developers"
|
1440 |
msgstr ""
|
1441 |
|
1442 |
+
#: src/includes/classes/MenuPageOptions.php:1038
|
1443 |
msgid "Developing a Theme or Plugin for WordPress?"
|
1444 |
msgstr ""
|
1445 |
|
1446 |
+
#: src/includes/classes/MenuPageOptions.php:1039
|
1447 |
msgid "<strong>Tip:</strong> %1$s can be disabled temporarily. If you're a theme/plugin developer, you can set a flag within your PHP code to disable the cache engine at runtime. Perhaps on a specific page, or in a specific scenario. In your PHP script, set: <code>$_SERVER['COMET_CACHE_ALLOWED'] = FALSE;</code> or <code>define('COMET_CACHE_ALLOWED', FALSE)</code>. %1$s is also compatible with: <code>define('DONOTCACHEPAGE', TRUE)</code>. It does't matter where or when you define one of these, because %1$s is the last thing to run before script execution ends."
|
1448 |
msgstr ""
|
1449 |
|
1450 |
+
#: src/includes/classes/MenuPageOptions.php:1041
|
1451 |
msgid "Writing \"Advanced Cache\" Plugins Specifically for %1$s"
|
1452 |
msgstr ""
|
1453 |
|
1454 |
+
#: src/includes/classes/MenuPageOptions.php:1042
|
1455 |
msgid "Theme/plugin developers can take advantage of the %1$s plugin architecture by creating PHP files inside this special directory: <code>/wp-content/ac-plugins/</code>. There is an <a href=\"http://cometcache.com/r/ac-plugin-example/\" target=\"_blank\">example plugin file @ GitHub</a> (please review it carefully and ask questions). If you develop a plugin for %1$s, please share it with the community by publishing it in the plugins respository at WordPress.org."
|
1456 |
msgstr ""
|
1457 |
|
1458 |
+
#: src/includes/classes/MenuPageOptions.php:1043
|
1459 |
msgid "<strong>Why does %1$s have it's own plugin architecture?</strong> WordPress loads the <code>advanced-cache.php</code> drop-in file (for caching purposes) very early-on; before any other plugins or a theme. For this reason, %1$s implements it's own watered-down version of functions like <code>add_action()</code>, <code>do_action()</code>, <code>add_filter()</code>, <code>apply_filters()</code>."
|
1460 |
msgstr ""
|
1461 |
|
1462 |
+
#: src/includes/classes/MenuPageOptions.php:1054
|
1463 |
msgid "Import/Export Options"
|
1464 |
msgstr ""
|
1465 |
|
1466 |
+
#: src/includes/classes/MenuPageOptions.php:1059
|
1467 |
msgid "Import Options from Another %1$s Installation?"
|
1468 |
msgstr ""
|
1469 |
|
1470 |
+
#: src/includes/classes/MenuPageOptions.php:1060
|
1471 |
msgid "Upload your <code>%1$s-options.json</code> file and click \"Save All Changes\" below. The options provided by your import file will override any that exist currently."
|
1472 |
msgstr ""
|
1473 |
|
1474 |
+
#: src/includes/classes/MenuPageOptions.php:1063
|
1475 |
msgid "Export Existing Options from this %1$s Installation?"
|
1476 |
msgstr ""
|
1477 |
|
1478 |
+
#: src/includes/classes/MenuPageOptions.php:1066
|
1479 |
msgid "%1$s-options.json"
|
1480 |
msgstr ""
|
1481 |
|
1482 |
+
#: src/includes/classes/MenuPageOptions.php:1067
|
1483 |
msgid "Download your existing options and import them all into another %1$s installation; saves time on future installs."
|
1484 |
msgstr ""
|
1485 |
|
1486 |
+
#: src/includes/classes/MenuPageOptions.php:1075
|
1487 |
msgid "Save All Changes"
|
1488 |
msgstr ""
|
1489 |
|
src/vendor/autoload.php
CHANGED
@@ -4,4 +4,4 @@
|
|
4 |
|
5 |
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
|
7 |
-
return
|
4 |
|
5 |
require_once __DIR__ . '/composer' . '/autoload_real.php';
|
6 |
|
7 |
+
return ComposerAutoloaderInit33853609dfb2ae52d36861a4ab25a03b::getLoader();
|
src/vendor/composer/autoload_real.php
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
-
class
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5
|
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
-
spl_autoload_register(array('
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
-
spl_autoload_unregister(array('
|
25 |
|
26 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
foreach ($map as $namespace => $path) {
|
@@ -44,7 +44,7 @@ class ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5
|
|
44 |
}
|
45 |
}
|
46 |
|
47 |
-
function
|
48 |
{
|
49 |
require $file;
|
50 |
}
|
2 |
|
3 |
// autoload_real.php @generated by Composer
|
4 |
|
5 |
+
class ComposerAutoloaderInit33853609dfb2ae52d36861a4ab25a03b
|
6 |
{
|
7 |
private static $loader;
|
8 |
|
19 |
return self::$loader;
|
20 |
}
|
21 |
|
22 |
+
spl_autoload_register(array('ComposerAutoloaderInit33853609dfb2ae52d36861a4ab25a03b', 'loadClassLoader'), true, true);
|
23 |
self::$loader = $loader = new \Composer\Autoload\ClassLoader();
|
24 |
+
spl_autoload_unregister(array('ComposerAutoloaderInit33853609dfb2ae52d36861a4ab25a03b', 'loadClassLoader'));
|
25 |
|
26 |
$map = require __DIR__ . '/autoload_namespaces.php';
|
27 |
foreach ($map as $namespace => $path) {
|
44 |
}
|
45 |
}
|
46 |
|
47 |
+
function composerRequire33853609dfb2ae52d36861a4ab25a03b($file)
|
48 |
{
|
49 |
require $file;
|
50 |
}
|