Comet Cache - Version 160227

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 Icon 128x128 Comet Cache
Version 160227
Comparing to
See all releases

Code changes from version 160223.1 to 160227

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: 160223.1
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: 160223.1
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, 12))) {
55
  continue; // Nothing to do here.
56
  }
57
- if (!defined(GLOBAL_NS.'_'.$_constant_sub_name)) {
58
- define(GLOBAL_NS.'_'.$_constant_sub_name, $_value);
59
  }
60
  }
61
- unset($_constant, $_value); // Housekeeping.
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(SLUG_TD.' '.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,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 15xxxx Improving `.htaccess` tweaks.
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 15xxxx Improving `.htaccess` tweaks.
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, 'w')) || !flock($resource, LOCK_EX)) {
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] = new Plugin();
 
 
 
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'] = '160223.1'; //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 160223.1\n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/comet-cache\n"
7
- "POT-Creation-Date: 2016-02-22 18:08:10+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,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:979
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:878
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1223
  msgid "GZIP Compression"
1224
  msgstr ""
1225
 
1226
- #: src/includes/classes/MenuPageOptions.php:883
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:884
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:885
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:886
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:900
1243
  msgid "Static CDN Filters"
1244
  msgstr ""
1245
 
1246
- #: src/includes/classes/MenuPageOptions.php:904
1247
  msgid "Clear CDN Cache (Bump CDN Invalidation Counter)"
1248
  msgstr ""
1249
 
1250
- #: src/includes/classes/MenuPageOptions.php:904
1251
  msgid "Clear CDN Cache"
1252
  msgstr ""
1253
 
1254
- #: src/includes/classes/MenuPageOptions.php:905
1255
  msgid "Enable Static CDN Filters (e.g., MaxCDN/CloudFront)?"
1256
  msgstr ""
1257
 
1258
- #: src/includes/classes/MenuPageOptions.php:906
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:907
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:910
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:914
1271
  msgid "No, I do NOT want CDN filters applied at runtime."
1272
  msgstr ""
1273
 
1274
- #: src/includes/classes/MenuPageOptions.php:915
1275
  msgid "Yes, I want CDN filters applied w/ my configuration below."
1276
  msgstr ""
1277
 
1278
- #: src/includes/classes/MenuPageOptions.php:922
1279
  msgid "CDN Host Name (Required)"
1280
  msgstr ""
1281
 
1282
- #: src/includes/classes/MenuPageOptions.php:928
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:933
1287
  msgid "Multiple CDN Host Names for Domain Sharding and Multisite Networks (Optional)"
1288
  msgstr ""
1289
 
1290
- #: src/includes/classes/MenuPageOptions.php:934
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>&lt;head&gt;</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:935
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:937
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:941
1303
  msgid "CDN Supports HTTPS Connections?"
1304
  msgstr ""
1305
 
1306
- #: src/includes/classes/MenuPageOptions.php:943
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:944
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:951
1315
  msgid "Additional Options (For Advanced Users)"
1316
  msgstr ""
1317
 
1318
- #: src/includes/classes/MenuPageOptions.php:956
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:960
1323
  msgid "Whitelisted File Extensions (Optional; Comma-Delimited)"
1324
  msgstr ""
1325
 
1326
- #: src/includes/classes/MenuPageOptions.php:962
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:964
1331
  msgid "Blacklisted File Extensions (Optional; Comma-Delimited)"
1332
  msgstr ""
1333
 
1334
- #: src/includes/classes/MenuPageOptions.php:966
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:970
1339
  msgid "Whitelisted URI Inclusion Patterns (Optional; One Per Line)"
1340
  msgstr ""
1341
 
1342
- #: src/includes/classes/MenuPageOptions.php:972
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:973
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:974
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:976
1355
  msgid "Blacklisted URI Exclusion Patterns (Optional; One Per Line)"
1356
  msgstr ""
1357
 
1358
- #: src/includes/classes/MenuPageOptions.php:978
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:983
1363
  msgid "Query String Invalidation Variable Name"
1364
  msgstr ""
1365
 
1366
- #: src/includes/classes/MenuPageOptions.php:985
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:986
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:987
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:1000
1379
  msgid "Dynamic Version Salt"
1380
  msgstr ""
1381
 
1382
- #: src/includes/classes/MenuPageOptions.php:1005
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:1006
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:1007
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:1008
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:1009
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:1010
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:1012
1407
  msgid "Create a Dynamic Version Salt For %1$s? &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style=\"font-size:90%%; opacity:0.5;\">150%% OPTIONAL</span>"
1408
  msgstr ""
1409
 
1410
- #: src/includes/classes/MenuPageOptions.php:1014
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:1015
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:1016
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:1026
1423
  msgid "Theme/Plugin Developers"
1424
  msgstr ""
1425
 
1426
- #: src/includes/classes/MenuPageOptions.php:1031
1427
  msgid "Developing a Theme or Plugin for WordPress?"
1428
  msgstr ""
1429
 
1430
- #: src/includes/classes/MenuPageOptions.php:1032
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:1034
1435
  msgid "Writing \"Advanced Cache\" Plugins Specifically for %1$s"
1436
  msgstr ""
1437
 
1438
- #: src/includes/classes/MenuPageOptions.php:1035
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:1036
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:1047
1447
  msgid "Import/Export Options"
1448
  msgstr ""
1449
 
1450
- #: src/includes/classes/MenuPageOptions.php:1052
1451
  msgid "Import Options from Another %1$s Installation?"
1452
  msgstr ""
1453
 
1454
- #: src/includes/classes/MenuPageOptions.php:1053
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:1056
1459
  msgid "Export Existing Options from this %1$s Installation?"
1460
  msgstr ""
1461
 
1462
- #: src/includes/classes/MenuPageOptions.php:1059
1463
  msgid "%1$s-options.json"
1464
  msgstr ""
1465
 
1466
- #: src/includes/classes/MenuPageOptions.php:1060
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:1068
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>&lt;head&gt;</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? &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <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 ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5::getLoader();
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 ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5
6
  {
7
  private static $loader;
8
 
@@ -19,9 +19,9 @@ class ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5
19
  return self::$loader;
20
  }
21
 
22
- spl_autoload_register(array('ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5', 'loadClassLoader'), true, true);
23
  self::$loader = $loader = new \Composer\Autoload\ClassLoader();
24
- spl_autoload_unregister(array('ComposerAutoloaderInit067707744d3a1bf2cf5138d984760fb5', 'loadClassLoader'));
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 composerRequire067707744d3a1bf2cf5138d984760fb5($file)
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
  }