WP Super Cache - Version 1.1

Version Description

Lots of bugfixes

=

Download this release

Release Info

Developer donncha
Plugin Icon 128x128 WP Super Cache
Version 1.1
Comparing to
See all releases

Code changes from version 1.0 to 1.1

Changelog.txt CHANGED
@@ -1,3 +1,496 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  2011-12-05 17:56 donncha
2
 
3
  * wp-super-cache.pot: Updated the translation file
1
+ 2012-05-23 10:17 donncha
2
+
3
+ * wp-super-cache.pot: Updated translation file
4
+
5
+ 2012-05-23 10:14 donncha
6
+
7
+ * wp-cache.php: Remove mentions of wp-minify as that plugin doesn't
8
+ exist any more
9
+
10
+ 2012-05-23 10:06 donncha
11
+
12
+ * wp-super-cache.pot: Updated translation file
13
+
14
+ 2012-05-23 10:04 donncha
15
+
16
+ * wp-cache.php: Added message to yellow box.
17
+
18
+ 2012-05-23 10:03 donncha
19
+
20
+ * wp-super-cache.pot: Updated translation file
21
+
22
+ 2012-05-17 15:36 donncha
23
+
24
+ * wp-cache-phase1.php, wp-cache.php: Remove the debug log level, I
25
+ always recommend level 5 anyway.
26
+
27
+ 2012-05-14 16:32 donncha
28
+
29
+ * wp-cache.php: Correctly check $wp_cache_disable_utf8 is not set
30
+
31
+ 2012-05-11 15:24 donncha
32
+
33
+ * Changelog.txt, readme.txt: Added changelog entries for 1.0 and
34
+ 1.1
35
+
36
+ 2012-05-11 15:02 donncha
37
+
38
+ * wp-super-cache.pot: Updated translation file
39
+
40
+ 2012-05-10 11:14 donncha
41
+
42
+ * wp-cache-phase2.php: Create the legacy cache dir if it's not
43
+ there
44
+
45
+ 2012-05-10 10:50 donncha
46
+
47
+ * wp-cache-phase2.php: Added wp_cache_clear_cache_on_menu() to
48
+ clear the cache when the navigation menu is modified
49
+
50
+ 2012-05-10 10:41 donncha
51
+
52
+ * wp-cache-phase2.php: Revert previous change,
53
+ wp_cache_clear_cache() with no parameter is supposed to clear out
54
+ all cached files
55
+
56
+ 2012-05-10 10:32 donncha
57
+
58
+ * wp-cache-phase2.php: Only clear the cache for the current blog,
59
+ not all blogs
60
+
61
+ 2012-05-10 10:28 donncha
62
+
63
+ * wp-cache-phase2.php: Only clear the cache cache of the current
64
+ blog when "clear all cache on new post" is enabled, not all blogs
65
+
66
+ 2012-05-10 10:25 donncha
67
+
68
+ * wp-cache-phase2.php: Added $blog_id parameter to
69
+ wp_cache_clear_cache() so only one blog's cache files are deleted
70
+ (except legacy files, all deleted regardless)
71
+
72
+ 2012-05-10 10:22 donncha
73
+
74
+ * wp-cache-phase1.php, wp-cache-phase2.php: Put code that creates
75
+ the cache/blogs/ directories into a function so it doesn't get
76
+ called all the time, slight speed up and less empty directories
77
+
78
+ 2012-05-10 10:08 donncha
79
+
80
+ * wp-cache-phase2.php: Added "clean_post_cache" action to clear
81
+ cache but stop the function being called twice
82
+
83
+ 2012-05-10 10:07 donncha
84
+
85
+ * wp-cache-phase1.php: Add $blog_id parameter to get_supercache_dir
86
+ function to get the directory for that blog
87
+
88
+ 2012-05-01 17:01 donncha
89
+
90
+ * wp-cache.php: Removed "Last GC" time as it's on the advanced
91
+ settings page.
92
+
93
+ 2012-05-01 16:50 donncha
94
+
95
+ * plugins/wptouch.php, wp-cache-phase1.php: Added
96
+ wp_cache_check_mobile filter to short circuit mobile check. See
97
+ http://wordpress.org/support/topic/wp-super-cache-and-wptouch?replies=2
98
+
99
+ 2012-04-26 07:51 donncha
100
+
101
+ * wp-cache-phase2.php: Don't delete cached files on draft post
102
+ save, props jrevillini
103
+ http://wordpress.org/support/topic/plugin-wp-super-cache-clear-all-cache-shouldnt-be-executed-on-a-draft-post?replies=7#post-2760461
104
+
105
+ 2012-04-13 14:05 donncha
106
+
107
+ * wp-cache-phase2.php: Added action for wp_trash_post so it clears
108
+ the cache
109
+
110
+ 2012-04-13 14:02 donncha
111
+
112
+ * wp-cache.php: Show more files in the file listing
113
+
114
+ 2012-04-13 13:21 donncha
115
+
116
+ * wp-cache.php: Show a warning when 304 browser caching is disabled
117
+
118
+ 2012-03-12 08:57 donncha
119
+
120
+ * wp-cache.php: If site is running less than PHP 5.3.0 then check
121
+ for safe mode. Props cyberws,
122
+ http://wordpress.org/support/topic/plugin-wp-super-cache-php-53-compatibility
123
+
124
+ 2012-03-07 10:59 donncha
125
+
126
+ * wp-cache-phase1.php: Reverse logic on the remove cookies filter
127
+
128
+ 2012-03-07 10:55 donncha
129
+
130
+ * wp-cache-phase1.php: Added a filter,
131
+ 'wp_supercache_remove_cookies' that decides if cookies should be
132
+ removed on a per request basis. See
133
+ http://wordpress.org/support/topic/plugin-wp-super-cache-make-known-users-anonymous-breaks-autheticated-commenting
134
+
135
+ 2012-03-01 11:52 donncha
136
+
137
+ * wp-cache.php: Fixed cache schedule dropdown
138
+
139
+ 2012-02-22 22:03 donncha
140
+
141
+ * wp-cache-base.php, wp-cache.php: Check that WP_MULTI_SITE is true
142
+ as well!
143
+
144
+ 2012-02-22 22:02 donncha
145
+
146
+ * wp-cache-phase2.php: No need to call this twice, removed second
147
+ call.
148
+
149
+ 2012-02-17 10:09 donncha
150
+
151
+ * wp-super-cache.pot: Updated translation file
152
+
153
+ 2012-02-16 14:18 donncha
154
+
155
+ * wp-cache.php: Added a title to the Delete Cache admin menu link
156
+
157
+ 2012-02-16 13:55 donncha
158
+
159
+ * wp-cache-base.php, wp-cache.php: Check for VHOST as well as
160
+ MULTISITE checks for sites that upgrade from MU and don't have
161
+ that constant set.
162
+
163
+ 2012-02-15 22:11 donncha
164
+
165
+ * wp-cache.php: When preloading, don't preload page_on_front or
166
+ page_for_poss pages as that will probably clear the cache. Props
167
+ te-deum. See
168
+ http://wordpress.org/support/topic/plugin-wp-super-cache-preloaded-pages-not-created-until-user-visits?replies=28#post-2627649
169
+
170
+ 2012-02-09 19:28 donncha
171
+
172
+ * wp-cache-phase2.php: Disable caching AFTER actions added so cache
173
+ is cleared
174
+
175
+ 2012-02-09 18:17 donncha
176
+
177
+ * wp-cache-phase1.php: If SERVER_NAME isn't defined then use
178
+ HTTP_HOST
179
+
180
+ 2012-02-09 18:03 donncha
181
+
182
+ * wp-cache-phase2.php: Hopefully fix moderation/administration of
183
+ comments.
184
+
185
+ 2012-02-09 16:09 donncha
186
+
187
+ * wp-cache-phase1.php, wp-cache-phase2.php: Check if variables
188
+ defined and avoid warnings
189
+
190
+ 2012-02-09 15:53 donncha
191
+
192
+ * wp-cache-phase1.php: Check that site_url returns something and
193
+ deal with it if it doesn't. PHP is weird sometimes.
194
+ http://wordpress.org/support/topic/wp-super-cache-not-refreshing-post-after-comments-made
195
+
196
+ 2012-02-09 14:01 donncha
197
+
198
+ * wp-cache-phase2.php: Check if referer is comments admin page to
199
+ decide what to delete, all or single page.
200
+
201
+ 2012-02-09 13:59 donncha
202
+
203
+ * wp-cache-base.php, wp-cache-phase1.php, wp-cache.php: Replace
204
+ HTTP_HOST with SERVER_NAME, props _ck_
205
+ http://wordpress.org/support/topic/plugin-wp-super-cache-minor-bug-with-use-of-_serverhttp_host-instead-of-_serverserver_name
206
+
207
+ 2012-02-09 13:58 donncha
208
+
209
+ * wp-cache-phase2.php: Add slashes to page urls when doing GC
210
+
211
+ 2012-02-09 13:49 donncha
212
+
213
+ * wp-cache.php: This error points at the wrong place in the docs
214
+
215
+ 2012-02-03 09:30 donncha
216
+
217
+ * wp-cache.php: Added link to Cron View, a plugin that can help
218
+ debug wp-cron problems
219
+
220
+ 2012-01-30 13:44 donncha
221
+
222
+ * readme.txt: Added link to Cron View plugin to help diagnose
223
+ crontab problems
224
+
225
+ 2012-01-30 12:00 donncha
226
+
227
+ * wp-cache-phase2.php: CRON requests are non empty GET requests so
228
+ we want to ignore those params
229
+
230
+ 2012-01-30 11:22 donncha
231
+
232
+ * wp-cache.php: Add description of GC notification emails checkbox
233
+
234
+ 2012-01-30 11:21 donncha
235
+
236
+ * wp-cache.php: Make it clearer that GC jobs are scheduled to UTC
237
+ times
238
+
239
+ 2012-01-30 09:19 donncha
240
+
241
+ * wp-cache.php: Make preloading of taxonomies optional, see
242
+ http://wordpress.org/support/topic/wp-super-cache-causes-time-out-on-file-delete-with-rackspace-cloudsites?replies=12
243
+
244
+ 2012-01-30 09:16 donncha
245
+
246
+ * wp-cache.php: Fixes for PHP warnings, props vStone, lots more to
247
+ come when I have time.
248
+ http://plugins.trac.wordpress.org/ticket/1466
249
+
250
+ 2012-01-23 09:19 donncha
251
+
252
+ * wp-cache.php: Use get_supercache_dir() rather than hardcoding the
253
+ supercache directory
254
+
255
+ 2012-01-23 09:18 donncha
256
+
257
+ * plugins/domain-mapping.php, wp-cache-phase1.php: Added
258
+ 'wp_super_cache_supercachedir' filter on supercache directory and
259
+ modified domain mapping plugin to support it, props Matthew
260
+ Boynes.
261
+
262
+ 2012-01-19 08:23 donncha
263
+
264
+ * plugins/wptouch.php: Check if wptouch functions exist before
265
+ filtering browsers
266
+
267
+ 2012-01-18 11:38 donncha
268
+
269
+ * readme.txt: Added warning that files in the cache directory are
270
+ prone to be deleted. See
271
+ http://ocaoimh.ie/2012/01/18/a-cache-directory-is-a-temporary-directory/
272
+
273
+ 2012-01-13 09:27 donncha
274
+
275
+ * wp-cache-phase2.php: Check that function returns false as it can
276
+ return 0 if not files deleted
277
+
278
+ 2012-01-11 10:59 donncha
279
+
280
+ * wp-cache-phase2.php: Clear out the global /page/* pages when a
281
+ post is published
282
+
283
+ 2012-01-11 10:58 donncha
284
+
285
+ * wp-cache-phase1.php: Remove https from the home url to get the
286
+ supercache dir
287
+
288
+ 2012-01-10 14:42 donncha
289
+
290
+ * wp-cache-phase2.php: Just some more debug messages!
291
+
292
+ 2012-01-10 14:41 donncha
293
+
294
+ * wp-cache-phase1.php, wp-cache-phase2.php, wp-cache.php: Added
295
+ options:
296
+ * disable caching if GET is not empty.
297
+ * disable the blog_charset .htaccess directive which I added back
298
+ in.
299
+
300
+ 2012-01-10 14:37 donncha
301
+
302
+ * wp-cache.php: don't check the mobile prefix or browser strings
303
+ against the rewrite rules when they're empty. Any changes will be
304
+ caught further down anyway
305
+
306
+ 2012-01-09 22:33 donncha
307
+
308
+ * wp-cache.php: I forgot that do_cacheaction() isn't defined before
309
+ the plugin is configured! See
310
+ http://wordpress.org/support/topic/plugin-wp-super-cache-my-page-2-is-randomly-redirecting-to-other-posts?replies=19#post-2549174
311
+
312
+ 2012-01-05 17:04 donncha
313
+
314
+ * plugins/multisite.php, wp-cache.php: Disable the settings page
315
+ when caching disabled on Site admin page.
316
+
317
+ 2012-01-05 15:52 donncha
318
+
319
+ * plugins/multisite.php: Added multisite Network Admin Sites
320
+ "Cached" column
321
+
322
+ 2012-01-05 12:51 donncha
323
+
324
+ * wp-cache-phase2.php: Cache the output of is_* functions used by
325
+ the plugin because $wp_query may be destroyed by the PHP
326
+ destructor. See
327
+ http://ocaoimh.ie/2012/01/04/wp-super-cache-bug-fixing-and-php-object-destruction/
328
+
329
+ 2012-01-04 16:22 donncha
330
+
331
+ * wp-cache.php: Removed unneeded debug log
332
+
333
+ 2012-01-04 16:04 donncha
334
+
335
+ * wp-cache.php: Put preload taxonomy code within posts limit checks
336
+ so it doesn't do extra preloads!
337
+
338
+ 2012-01-04 16:02 donncha
339
+
340
+ * wp-cache.php: Check if number of posts is less than post limit so
341
+ preload finishes without trying to do an extra 100 posts
342
+
343
+ 2012-01-04 16:01 donncha
344
+
345
+ * wp-cache.php: Update preload counter before taxonomy preload so
346
+ the admin page shows the preload action
347
+
348
+ 2012-01-04 16:00 donncha
349
+
350
+ * wp-cache-phase2.php, wp-cache.php: Added lots more debugging -
351
+ prune_super_cache and preload functions
352
+
353
+ 2012-01-04 11:56 donncha
354
+
355
+ * plugins/wptouch.php: Make sure ua list is an array as it's stored
356
+ as a string
357
+
358
+ 2012-01-04 10:26 donncha
359
+
360
+ * wp-cache-phase2.php: Fixed minor typo in debug log message
361
+
362
+ 2012-01-04 10:20 donncha
363
+
364
+ * wp-cache-phase2.php: Only write meta cache file if not using only
365
+ supercache files.
366
+
367
+ 2012-01-04 10:16 donncha
368
+
369
+ * wp-cache-phase2.php: Check if $wp_query is defined before
370
+ checking for is_feed, is_search etc.
371
+
372
+ 2012-01-04 09:57 donncha
373
+
374
+ * wp-cache-phase2.php: Correctly check if GET is empty for anon
375
+ caching
376
+
377
+ 2012-01-04 09:08 donncha
378
+
379
+ * plugins/searchengine.php: Update plugin admin page to match other
380
+ plugins
381
+
382
+ 2012-01-04 00:03 donncha
383
+
384
+ * wp-cache-phase2.php: Make sure we don't write anon files for GET
385
+ requests, see
386
+ http://wordpress.org/support/topic/plugin-wp-super-cache-my-page-2-is-randomly-redirecting-to-other-posts?replies=5
387
+
388
+ 2012-01-03 23:58 donncha
389
+
390
+ * wp-cache-phase2.php: Write meta file if user is not using
391
+ supercacheonly or is not logged in, not AND.
392
+
393
+ 2012-01-03 18:14 donncha
394
+
395
+ * wp-cache-phase2.php: Make sure a post is published before
396
+ removing cache files. Props _ck_, see
397
+ http://wordpress.org/support/topic/plugin-wp-super-cache-found-possible-bug-with-starting-new-post
398
+
399
+ 2012-01-03 18:08 donncha
400
+
401
+ * plugins/wptouch.php, wp-cache-phase1.php, wp-cache.php: Added
402
+ WPTouch plugin to modify browser list and prefix list and added
403
+ support for exclude list in that plugin.
404
+
405
+ 2012-01-03 13:12 donncha
406
+
407
+ * wp-cache.php: Use display text for scheduled interval.
408
+
409
+ 2012-01-03 11:02 donncha
410
+
411
+ * ossdl-cdn.php: Make sure $arr_of_excludes is an array always to
412
+ avoid stristr warning
413
+
414
+ 2011-12-22 13:16 donncha
415
+
416
+ * wp-cache.php: Don't check the blog_id if the site isn't a
417
+ multisite network.
418
+
419
+ 2011-12-22 12:39 donncha
420
+
421
+ * wp-cache.php: Only show the "Delete Cache" link in the admin bar
422
+ when caching off for known users
423
+
424
+ 2011-12-15 08:57 donncha
425
+
426
+ * wp-cache.php: Make sure pages returned by cache tester are not
427
+ error objects!
428
+
429
+ 2011-12-11 09:05 donncha
430
+
431
+ * wp-cache.php: Delete index files rather than directory when
432
+ deleting post supercache files.
433
+
434
+ 2011-12-11 09:04 donncha
435
+
436
+ * wp-cache-phase2.php: Added another debug message
437
+
438
+ 2011-12-10 22:31 donncha
439
+
440
+ * wp-cache-phase2.php: Add the cache age limit to the debug message
441
+ when a cache file is deleted during GC
442
+
443
+ 2011-12-10 22:30 donncha
444
+
445
+ * wp-cache-phase2.php: Filter the tags that are checked at the end
446
+ of a web document with a 'wp_cache_eof_tags' filter. See
447
+ http://wordpress.org/support/topic/plugin-wp-super-cache-feature-request-test-for-opening-xml-tag-in-wp_cache_get_ob?replies=4
448
+
449
+ 2011-12-10 10:50 donncha
450
+
451
+ * wp-cache.php: Fix schedule frequency form,
452
+ http://wordpress.org/support/topic/plugin-wp-super-cache-garbage-collection-scheduler-interval-not-saved-always-hourly?replies=2
453
+
454
+ 2011-12-10 10:02 donncha
455
+
456
+ * wp-cache.php: Clear out wp-cache legacy files from root cache dir
457
+ as well as blogs directories
458
+
459
+ 2011-12-10 10:01 donncha
460
+
461
+ * readme.txt: Attempt to fix formatting of FAQ
462
+
463
+ 2011-12-06 17:04 donncha
464
+
465
+ * wp-cache-phase1.php, wp-cache-phase2.php: Check if the rejected
466
+ uri or ua is an array.
467
+
468
+ 2011-12-06 15:13 donncha
469
+
470
+ * wp-super-cache.pot: Updated the translation file
471
+
472
+ 2011-12-06 12:44 donncha
473
+
474
+ * wp-cache.php: Explain that cancelling a preload may take some
475
+ time.
476
+
477
+ 2011-12-06 12:22 donncha
478
+
479
+ * wp-cache.php: Move preload notifications around and added
480
+ notification for taxonomy preload
481
+
482
+ 2011-12-05 20:42 donncha
483
+
484
+ * readme.txt: Bump the WP version number.
485
+
486
+ 2011-12-05 18:01 donncha
487
+
488
+ * readme.txt, wp-cache.php: Bump version to 1.0
489
+
490
+ 2011-12-05 17:58 donncha
491
+
492
+ * Changelog.txt: Updated changelog
493
+
494
  2011-12-05 17:56 donncha
495
 
496
  * wp-super-cache.pot: Updated the translation file
ossdl-cdn.php CHANGED
@@ -14,6 +14,8 @@ if ( get_option( 'ossdl_off_exclude' ) == false )
14
  add_option('ossdl_off_exclude', '.php');
15
  $ossdl_off_exclude = trim(get_option('ossdl_off_exclude'));
16
  $arr_of_excludes = array_map('trim', explode(',', $ossdl_off_exclude));
 
 
17
 
18
  if ( get_option( 'ossdl_cname' ) == false )
19
  add_option('ossdl_cname', '');
@@ -65,7 +67,7 @@ function scossdl_off_rewriter($match) {
65
  if ( false == in_array( $ossdl_off_cdn_url, $arr_of_cnames ) )
66
  $arr_of_cnames[] = $ossdl_off_cdn_url;
67
 
68
- if (scossdl_off_exclude_match($match[0], $arr_of_excludes)) {
69
  return $match[0];
70
  } else {
71
  $include_dirs = scossdl_off_additional_directories();
14
  add_option('ossdl_off_exclude', '.php');
15
  $ossdl_off_exclude = trim(get_option('ossdl_off_exclude'));
16
  $arr_of_excludes = array_map('trim', explode(',', $ossdl_off_exclude));
17
+ if ( !is_array( $arr_of_excludes ) )
18
+ $arr_of_excludes = array();
19
 
20
  if ( get_option( 'ossdl_cname' ) == false )
21
  add_option('ossdl_cname', '');
67
  if ( false == in_array( $ossdl_off_cdn_url, $arr_of_cnames ) )
68
  $arr_of_cnames[] = $ossdl_off_cdn_url;
69
 
70
+ if ( scossdl_off_exclude_match( $match[0], $arr_of_excludes ) ) {
71
  return $match[0];
72
  } else {
73
  $include_dirs = scossdl_off_additional_directories();
plugins/domain-mapping.php CHANGED
@@ -30,9 +30,24 @@ function domain_mapping_gc_cache( $function, $directory ) {
30
  return $directory;
31
  }
32
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
33
  function domain_mapping_actions() {
34
  global $cache_domain_mapping;
35
  if( $cache_domain_mapping == '1' ) {
 
36
  add_action( 'gc_cache', 'domain_mapping_gc_cache', 10, 2 );
37
  }
38
  }
30
  return $directory;
31
  }
32
 
33
+ function domain_mapping_supercachedir( $dir ) {
34
+ global $cache_path;
35
+ if ( !function_exists( 'domain_mapping_warning' ) )
36
+ return $dir;
37
+
38
+ $siteurl = domain_mapping_siteurl( false );
39
+ if ( !$siteurl )
40
+ return $dir;
41
+
42
+ $protocol = ( 'on' == strtolower( $_SERVER['HTTPS' ] ) ) ? 'https://' : 'http://';
43
+ $siteurl = str_replace( $protocol, '', $siteurl );
44
+ return $cache_path . 'supercache/' . $siteurl;
45
+ }
46
+
47
  function domain_mapping_actions() {
48
  global $cache_domain_mapping;
49
  if( $cache_domain_mapping == '1' ) {
50
+ add_filter( 'wp_super_cache_supercachedir', 'domain_mapping_supercachedir' );
51
  add_action( 'gc_cache', 'domain_mapping_gc_cache', 10, 2 );
52
  }
53
  }
plugins/multisite.php ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ if ( defined( 'WP_ALLOW_MULTISITE' ) )
4
+ add_cacheaction( 'add_cacheaction', 'wp_super_cache_multisite_init' );
5
+
6
+ function wp_super_cache_multisite_init() {
7
+ add_filter( 'wpmu_blogs_columns', 'wp_super_cache_blogs_col' );
8
+ add_action( 'manage_sites_custom_column', 'wp_super_cache_blogs_field', 10, 2 );
9
+ add_action( 'init', 'wp_super_cache_override_on_flag' );
10
+ }
11
+
12
+ function wp_super_cache_blogs_col( $col ) {
13
+ $col[ 'wp_super_cache' ] = __( 'Cached', 'wp-super-cache' );
14
+ return $col;
15
+ }
16
+
17
+ function wp_super_cache_blogs_field( $name, $blog_id ) {
18
+ if ( $name != 'wp_super_cache' )
19
+ return false;
20
+
21
+ if ( isset( $_GET[ 'id' ] ) && $blog_id == $_GET[ 'id' ] ) {
22
+ $valid_nonce = isset( $_GET[ '_wpnonce' ] ) ? wp_verify_nonce( $_GET[ '_wpnonce' ], 'wp-cache' . $_GET[ 'id' ] ) : false;
23
+ if ( $valid_nonce && isset( $_GET[ 'action' ] ) && $_GET[ 'action' ] == 'disable_cache' ) {
24
+ add_blog_option( $_GET[ 'id' ], 'wp_super_cache_disabled', 1 );
25
+ } elseif ( $valid_nonce && isset( $_GET[ 'action' ] ) && $_GET[ 'action' ] == 'enable_cache' ) {
26
+ delete_blog_option( $_GET[ 'id' ], 'wp_super_cache_disabled' );
27
+ }
28
+ }
29
+
30
+ if ( get_blog_option( $blog_id, 'wp_super_cache_disabled' ) == 1 ) {
31
+ echo "<a href='" . wp_nonce_url( add_query_arg( array( 'action' => 'enable_cache', 'id' => $blog_id ) ), 'wp-cache' . $blog_id ) . "'>" . __( 'Enable', 'wp-super-cache' ) . "</a>";
32
+ } else {
33
+ echo "<a href='" . wp_nonce_url( add_query_arg( array( 'action' => 'disable_cache', 'id' => $blog_id ) ), 'wp-cache' . $blog_id ) . "'>" . __( 'Disable', 'wp-super-cache' ) . "</a>";
34
+ }
35
+ }
36
+
37
+ function wp_super_cache_multisite_notice() {
38
+ if ( isset( $_GET[ 'page' ] ) && $_GET[ 'page' ] == 'wpsupercache' )
39
+ echo '<div class="error"><p><strong>' . __( 'Caching has been disabled on this blog on the Network Admin Sites page.', 'wp-super-cache' ) . '</strong></p></div>';
40
+ }
41
+
42
+ function wp_super_cache_override_on_flag() {
43
+ global $cache_enabled, $super_cache_enabled;
44
+ if ( $cache_enabled != true )
45
+ return false;
46
+
47
+ if ( get_option( 'wp_super_cache_disabled' ) ) {
48
+ $cache_enabled = false;
49
+ $super_cache_enabled = false;
50
+ define( 'DONOTCACHEPAGE', 1 );
51
+ define( "SUBMITDISABLED", 'disabled style="color: #aaa" ' );
52
+ if ( is_admin() )
53
+ add_action( 'admin_notices', 'wp_super_cache_multisite_notice' );
54
+ }
55
+ }
56
+
57
+ ?>
plugins/searchengine.php CHANGED
@@ -61,21 +61,28 @@ function wp_supercache_searchengine_admin() {
61
  $cache_no_adverts_for_friends = $_POST['cache_no_adverts_for_friends'] == __( 'Disable', 'wp-super-cache' ) ? 'no' : 'yes';
62
  wp_cache_replace_line('^ *\$cache_no_adverts_for_friends', "\$cache_no_adverts_for_friends = '$cache_no_adverts_for_friends';", $wp_cache_config_file);
63
  }
64
- echo '<li><form name="wp_supercache_searchengine_admin" action="'. $_SERVER["REQUEST_URI"] . '" method="post">';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
65
  wp_nonce_field('wp-cache');
66
- if( $cache_no_adverts_for_friends == 'no' ) {
67
- $status = __( 'disabled', 'wp-super-cache' );
68
- } else {
69
- $status = __( 'enabled', 'wp-super-cache' );
70
- }
71
- echo '<strong>' . sprintf( __( '<a href="http://ocaoimh.ie/no-adverts-for-friends/">No Adverts for Friends</a> plugin is %s.', 'wp-super-cache' ), $status );
72
- echo '</strong> ' . __( '(requires <a href="http://ocaoimh.ie/no-adverts-for-friends/">friendsadverts.php</a> too) ', 'wp-super-cache' );
73
- if( $cache_no_adverts_for_friends == 'no' ) {
74
- echo '<input type="submit" name="cache_no_adverts_for_friends" value="' . __( 'Enable', 'wp-super-cache' ) . '" />';
75
- } else {
76
- echo '<input type="submit" name="cache_no_adverts_for_friends" value="' . __( 'Disable', 'wp-super-cache' ) . '" />';
77
- }
78
- echo "</form></li>\n";
79
 
80
  }
81
  add_cacheaction( 'cache_admin_page', 'wp_supercache_searchengine_admin' );
61
  $cache_no_adverts_for_friends = $_POST['cache_no_adverts_for_friends'] == __( 'Disable', 'wp-super-cache' ) ? 'no' : 'yes';
62
  wp_cache_replace_line('^ *\$cache_no_adverts_for_friends', "\$cache_no_adverts_for_friends = '$cache_no_adverts_for_friends';", $wp_cache_config_file);
63
  }
64
+ $id = 'no_adverts_for_friends-section';
65
+ ?>
66
+ <fieldset id="<?php echo $id; ?>" class="options">
67
+ <h4><?php _e( 'No Adverts for Friends', 'wp-super-cache' ); ?></h4>
68
+ <form name="wp_manager" action="<?php echo $_SERVER[ "REQUEST_URI" ]; ?>" method="post">
69
+ <label><input type="radio" name="cache_no_adverts_for_friends" value="1" <?php if( $cache_no_adverts_for_friends == 'yes' ) { echo 'checked="checked" '; } ?>/> <?php _e( 'Enabled', 'wp-super-cache' ); ?></label>
70
+ <label><input type="radio" name="cache_no_adverts_for_friends" value="0" <?php if( $cache_no_adverts_for_friends == 'no' ) { echo 'checked="checked" '; } ?>/> <?php _e( 'Disabled', 'wp-super-cache' ); ?></label>
71
+ <p><?php _e( '', 'wp-super-cache' ); ?></p><?php
72
+ echo '<p>' . __( 'Provides support for <a href="http://ocaoimh.ie/no-adverts-for-friends/">No Adverts for Friends</a>.', 'wp-super-cache' ) . '</p>';
73
+ if ($changed) {
74
+ if ( 'yes' == $cache_no_adverts_for_friends )
75
+ $status = __( "enabled" );
76
+ else
77
+ $status = __( "disabled" );
78
+ echo "<p><strong>" . sprintf( __( "No Adverts for Friends support is now %s", 'wp-super-cache' ), $status ) . "</strong></p>";
79
+ }
80
+ echo '<div class="submit"><input ' . SUBMITDISABLED . 'type="submit" value="' . __( 'Update', 'wp-super-cache' ) . '" /></div>';
81
  wp_nonce_field('wp-cache');
82
+ ?>
83
+ </form>
84
+ </fieldset>
85
+ <?php
 
 
 
 
 
 
 
 
 
86
 
87
  }
88
  add_cacheaction( 'cache_admin_page', 'wp_supercache_searchengine_admin' );
plugins/wptouch.php ADDED
@@ -0,0 +1,114 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ function wp_super_cache_wptouch_admin() {
4
+ global $cache_wptouch, $wp_cache_config_file, $valid_nonce;
5
+
6
+ $cache_wptouch = $cache_wptouch == '' ? '0' : $cache_wptouch;
7
+
8
+ if(isset($_POST['cache_wptouch']) && $valid_nonce) {
9
+ if ( $cache_wptouch == (int)$_POST['cache_wptouch'] ) {
10
+ $changed = false;
11
+ } else {
12
+ $changed = true;
13
+ }
14
+ $cache_wptouch = (int)$_POST['cache_wptouch'];
15
+ wp_cache_replace_line('^ *\$cache_wptouch', "\$cache_wptouch = '$cache_wptouch';", $wp_cache_config_file);
16
+ }
17
+ $id = 'wptouch-section';
18
+ ?>
19
+ <fieldset id="<?php echo $id; ?>" class="options">
20
+ <h4><?php _e( 'WPTouch', 'wp-super-cache' ); ?></h4>
21
+ <form name="wp_manager" action="<?php echo $_SERVER[ "REQUEST_URI" ]; ?>" method="post">
22
+ <label><input type="radio" name="cache_wptouch" value="1" <?php if( $cache_wptouch ) { echo 'checked="checked" '; } ?>/> <?php _e( 'Enabled', 'wp-super-cache' ); ?></label>
23
+ <label><input type="radio" name="cache_wptouch" value="0" <?php if( !$cache_wptouch ) { echo 'checked="checked" '; } ?>/> <?php _e( 'Disabled', 'wp-super-cache' ); ?></label>
24
+ <p><?php _e( '', 'wp-super-cache' ); ?></p><?php
25
+ echo '<p>' . __( 'Provides support for <a href="http://wordpress.org/extend/plugins/wptouch/">WPTouch</a> mobile theme and plugin.', 'wp-super-cache' ) . '</p>';
26
+ if ($changed) {
27
+ if ( $cache_wptouch )
28
+ $status = __( "enabled" );
29
+ else
30
+ $status = __( "disabled" );
31
+ echo "<p><strong>" . sprintf( __( "WPTouch support is now %s", 'wp-super-cache' ), $status ) . "</strong></p>";
32
+ }
33
+ echo '<div class="submit"><input ' . SUBMITDISABLED . 'type="submit" value="' . __( 'Update', 'wp-super-cache' ) . '" /></div>';
34
+ wp_nonce_field('wp-cache');
35
+ ?>
36
+ </form>
37
+ </fieldset>
38
+ <?php
39
+ }
40
+ add_cacheaction( 'cache_admin_page', 'wp_super_cache_wptouch_admin' );
41
+
42
+ function wp_super_cache_wptouch_notice() {
43
+ global $cache_enabled, $cache_wptouch;
44
+ if( $cache_enabled )
45
+ echo '<div class="error"><p><strong>' . __('WPTouch plugin detected! Please go to the Supercache plugins page and enable the WPTouch helper plugin.', 'wp-super-cache' ) . '</strong></p></div>';
46
+ }
47
+ function wp_super_cache_wptouch_exists() {
48
+ global $cache_wptouch;
49
+ if ( $cache_wptouch == 1 )
50
+ return false;
51
+
52
+ if ( is_admin() && function_exists( 'wptouch_get_plugin_dir_name' ) )
53
+ add_action( 'admin_notices', 'wp_super_cache_wptouch_notice' );
54
+ }
55
+
56
+ if ( isset( $_GET[ 'page' ] ) && $_GET[ 'page' ] == 'wpsupercache' ) {
57
+ add_cacheaction( 'add_cacheaction', 'wp_super_cache_wptouch_exists' );
58
+ }
59
+
60
+ // disable mobile checking if
61
+ function wp_super_cache_maybe_disable_wptouch( $t ) {
62
+ global $cache_wptouch, $wptouch_exclude_ua;
63
+ if ( $cache_wptouch != 1 )
64
+ return false;
65
+
66
+ if ( isset( $_COOKIE[ 'wptouch_switch_toggle' ] ) && $_COOKIE['wptouch_switch_toggle'] == 'normal' )
67
+ return true;
68
+
69
+ $ua = explode( ",", $wptouch_exclude_ua );
70
+ foreach( $ua as $agent ) {
71
+ if ( preg_match( "#$agent#i", $_SERVER[ 'HTTP_HOST' ] ) )
72
+ return true; // disable mobile ua check if matches the exclude list in wptouch
73
+ }
74
+
75
+ return false;
76
+
77
+ }
78
+
79
+ add_cacheaction( 'disable_mobile_check', 'wp_super_cache_maybe_disable_wptouch' );
80
+
81
+ function wp_super_cache_wptouch_browsers( $browsers ) {
82
+ global $cache_wptouch, $wptouch_exclude_ua, $wp_cache_config_file;
83
+
84
+ if ( false == function_exists( 'bnc_wptouch_get_exclude_user_agents' ) || false == function_exists( 'bnc_wptouch_get_user_agents' ) )
85
+ return $browsers;
86
+
87
+ $browsers = implode( ',', bnc_wptouch_get_exclude_user_agents() ); // hack, support exclude agents too
88
+ if ( $browsers != $wptouch_exclude_ua ) {
89
+ wp_cache_replace_line('^ *\$wptouch_exclude_ua', "\$wptouch_exclude_ua = '$browsers';", $wp_cache_config_file);
90
+ $wptouch_exclude_ua = $browsers;
91
+ }
92
+
93
+ return bnc_wptouch_get_user_agents();
94
+ }
95
+
96
+ function wp_super_cache_wptouch_prefixes( $prefixes ) {
97
+ return array(); // wptouch doesn't support UA prefixes
98
+ }
99
+
100
+ function wp_super_cache_wptouch_cookie_check( $cache_key ) {
101
+ if ( false == isset( $_COOKIE[ 'wptouch_switch_toggle' ] ) )
102
+ return $cache_key;
103
+ if ( $_COOKIE[ 'wptouch_switch_toggle' ] == 'normal' || $_COOKIE[ 'wptouch_switch_toggle' ] == 'mobile' )
104
+ return $_COOKIE[ 'wptouch_switch_toggle' ];
105
+
106
+ return $cache_key;
107
+ }
108
+
109
+ if ( $cache_wptouch == 1 ) {
110
+ add_cacheaction( 'wp_super_cache_mobile_browsers', 'wp_super_cache_wptouch_browsers' );
111
+ add_cacheaction( 'wp_super_cache_mobile_prefixes', 'wp_super_cache_wptouch_prefixes' );
112
+ add_cacheaction( 'wp_cache_check_mobile', 'wp_super_cache_wptouch_cookie_check' );
113
+ }
114
+ ?>
readme.txt CHANGED
@@ -1,8 +1,8 @@
1
  === WP Super Cache ===
2
  Contributors: donncha, automattic
3
  Tags: performance,caching,wp-cache,wp-super-cache,cache
4
- Tested up to: 3.3.1
5
- Stable tag: 1.0
6
  Requires at least: 3.0
7
 
8
  A very fast caching engine for WordPress that produces static html files.
@@ -52,13 +52,56 @@ The [changelog](http://svn.wp-plugins.org/wp-super-cache/trunk/Changelog.txt) is
52
 
53
  Interested in translating WP Super Cache to your language? Grab the [development version](http://downloads.wordpress.org/plugin/wp-super-cache.zip) where you will find an up to date wp-super-cache.pot. Send any translation files to donncha @ ocaoimh.ie and thank you!
54
 
 
 
55
  == Upgrade Notice ==
56
 
57
- = 0.9.9.9 =
58
- Serve repeated static files from the same CDN hostname, translations, lots of bug fixes
59
 
60
  == Changelog ==
61
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
  = 0.9.9.9 =
63
  * Fixed typo, is_front_page.
64
  * Serve repeated static files from the same CDN hostname.
@@ -442,10 +485,9 @@ If things don't work when you installed the plugin here are a few things to chec
442
  13. File locking errors such as "failed to acquire key 0x152b: Permission denied in..." or "Page not cached by WP Super Cache. Could not get mutex lock." are a sign that you may have to use file locking. Edit wp-content/wp-cache-config.php and uncomment "$use_flock = true" or set $sem_id to a different value. You can also disable file locking from the Admin screen as a last resort.
443
  14. Make sure cache/wp_cache_mutex.lock is writable by the web server if using coarse file locking.
444
  15. The cache folder cannot be put on an NFS or Samba or NAS share. It has to be on a local disk. File locking and deleting expired files will not work properly unless the cache folder is on the local machine.
445
- 16. Garbage collection of old cache files won't work if WordPress can't find wp-cron.php. If your hostname resolves to 127.0.0.1 it could be preventing the garbage collection from working. Check your access_logs for wp-cron.php entries. Do they return a 404 (file not found) or 200 code? If it's 404 or you don't see wp-cron.php anywhere WordPress may be looking for that script in the wrong place. You should speak to your server administator to correct this or edit /etc/hosts on Unix servers and remove the following line. Your hostname must resolve to the external IP address other servers on the network/Internet use. See http://yoast.com/wp-cron-issues/ for more.
446
 
447
  `127.0.0.1 myhostname.com`
448
- A line like "127.0.0.1 localhost localhost.localdomain" is ok.
449
  17. If old pages are being served to your visitors via the supercache, you may be missing Apache modules (or their equivalents if you don't use Apache). 3 modules are required: mod_mime, mod_headers and mod_expires. The last two are especially important for making sure browsers load new versions of existing pages on your site.
450
  18. The error message, "WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed!" appears at the end of every page. Open the file wp-content/advanced-cache.php in your favourite editor. Is the path to wp-cache-phase1.php correct? This file will normally be in wp-content/plugins/wp-super-cache/. If it is not correct the caching engine will not load.
451
  19. Caching doesn't work. The timestamp on my blog keeps changing when I reload. Check that the path in your .htaccess rules matches where the supercache directory is. You may have to hardcode it. Or use the plugin in PHP or legacy caching mode.
@@ -455,7 +497,6 @@ A line like "127.0.0.1 localhost localhost.localdomain" is ok.
455
  21. If you see garbage in your browser after enabling compression in the plugin, compression may already be enabled in your web server. In Apache you must disable mod_deflate, or in PHP zlib compression may be enabled. You can disable that in three ways. If you have root access, edit your php.ini and find the zlib.output_compression setting and make sure it's "Off" or add this line to your .htaccess:
456
 
457
  `php_flag zlib.output_compression off`
458
-
459
  If that doesn't work, add this line to your wp-config.php:
460
 
461
  `ini_set('zlib.output_compression', 0);`
@@ -466,6 +507,7 @@ If that doesn't work, add this line to your wp-config.php:
466
  26. If certain characters do not appear correctly on your website your server may not be configured correctly. You need to tell visitors what character set is used. Go to Settings->Reading and copy the 'Encoding for pages and feeds' value. Edit the .htaccess file with all your Supercache and WordPress rewrite rules and add this at the top, replacing CHARSET with the copied value. (for example, 'UTF-8')
467
 
468
  `AddDefaultCharset CHARSET`
 
469
 
470
 
471
  == CDN ==
1
  === WP Super Cache ===
2
  Contributors: donncha, automattic
3
  Tags: performance,caching,wp-cache,wp-super-cache,cache
4
+ Tested up to: 3.4
5
+ Stable tag: 1.1
6
  Requires at least: 3.0
7
 
8
  A very fast caching engine for WordPress that produces static html files.
52
 
53
  Interested in translating WP Super Cache to your language? Grab the [development version](http://downloads.wordpress.org/plugin/wp-super-cache.zip) where you will find an up to date wp-super-cache.pot. Send any translation files to donncha @ ocaoimh.ie and thank you!
54
 
55
+ The cache directory, usually wp-content/cache/ is only for temporary files. Do not ever put important files or symlinks to important files or directories in that directory. They will be deleted if the plugin has write access to them.
56
+
57
  == Upgrade Notice ==
58
 
59
+ = 1.1 =
60
+ Lots of bugfixes
61
 
62
  == Changelog ==
63
 
64
+ = 1.1 =
65
+ * Use $_SERVER[ 'SERVER_NAME' ] to create cache directories.
66
+ * Only create blogs cached directories if valid requests and blogs exist.
67
+ * Only clear current blog's cache files if navigation menu is modified
68
+ * Added clean_post_cache action to clear cache on post actions
69
+ * Removed garbage collection details on Contents tab
70
+ * Added wp_cache_check_mobile cacheaction filter to shortcircuit mobile device check.
71
+ * Don't delete cache files for draft posts
72
+ * Added action on wp_trash_post to clear the cache when trashed posts are deleted
73
+ * Show a warning when 304 browser caching is disabled (because mod_rewrite caching is on)
74
+ * New check for safe mode if using less that PHP 5.3.0
75
+ * Added wp_supercache_remove_cookies filter to disable anonymous browsing mode.
76
+ * Fixed garbage collection schedule dropdown
77
+ * Fixed preload problem clearing site's cache on "page on front" sites.
78
+ * Fix for PHP variable not defined warnings
79
+ * Fixed problem refreshing cache when comments made as siteurl() sometimes didn't work
80
+ * Preloading of taxonomies is now optional
81
+ * Domain mapping fixes.
82
+ * Better support for https sites. Remove https:// to get cache paths.
83
+ * Added AddDefaultCharset .htaccess rule back in and added an option to remove it if required.
84
+ * Added multisite plugin that adds a "Cached" column to Network->Sites to disable caching on a per site basis.
85
+ * Added WPTouch plugin to modify browser and prefix list in mobile detection code. Added support for that plugin's exclude list.
86
+ * Fixed cache tester
87
+ * Filter the tags that are used to detect end-of-page using the wp_cache_eof_tags filter.
88
+ * Removed debug level from logging as it wasn't helpful.
89
+ * Removed mention of wp-minify.
90
+
91
+ = 1.0 =
92
+ * Removed AddDefaultCharset .htaccess rule
93
+ * Fixed problem with blogs in a folder and don't have a trailing slash
94
+ * New scheduling of garbage collection
95
+ * Added a "Delete cache" link to admin bar to delete cache of current page.
96
+ * Updated documentation
97
+ * Sorry Digg, Stephen Fry power now!
98
+ * Updated translations
99
+ * Preload taxonomies and all post types except revisionsand nav menu items
100
+ * Fixed previews by logged in users.
101
+ * Added option to make logged in users anonymous
102
+ * Use WP 3.0 variables to detect multisite installs
103
+ * Hash filenames so files are served from the same CDNs
104
+
105
  = 0.9.9.9 =
106
  * Fixed typo, is_front_page.
107
  * Serve repeated static files from the same CDN hostname.
485
  13. File locking errors such as "failed to acquire key 0x152b: Permission denied in..." or "Page not cached by WP Super Cache. Could not get mutex lock." are a sign that you may have to use file locking. Edit wp-content/wp-cache-config.php and uncomment "$use_flock = true" or set $sem_id to a different value. You can also disable file locking from the Admin screen as a last resort.
486
  14. Make sure cache/wp_cache_mutex.lock is writable by the web server if using coarse file locking.
487
  15. The cache folder cannot be put on an NFS or Samba or NAS share. It has to be on a local disk. File locking and deleting expired files will not work properly unless the cache folder is on the local machine.
488
+ 16. Garbage collection of old cache files won't work if WordPress can't find wp-cron.php. If your hostname resolves to 127.0.0.1 it could be preventing the garbage collection from working. Check your access_logs for wp-cron.php entries. Do they return a 404 (file not found) or 200 code? If it's 404 or you don't see wp-cron.php anywhere WordPress may be looking for that script in the wrong place. You should speak to your server administator to correct this or edit /etc/hosts on Unix servers and remove the following line. Your hostname must resolve to the external IP address other servers on the network/Internet use. See http://yoast.com/wp-cron-issues/ for more. A line like "127.0.0.1 localhost localhost.localdomain" is ok.
489
 
490
  `127.0.0.1 myhostname.com`
 
491
  17. If old pages are being served to your visitors via the supercache, you may be missing Apache modules (or their equivalents if you don't use Apache). 3 modules are required: mod_mime, mod_headers and mod_expires. The last two are especially important for making sure browsers load new versions of existing pages on your site.
492
  18. The error message, "WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed!" appears at the end of every page. Open the file wp-content/advanced-cache.php in your favourite editor. Is the path to wp-cache-phase1.php correct? This file will normally be in wp-content/plugins/wp-super-cache/. If it is not correct the caching engine will not load.
493
  19. Caching doesn't work. The timestamp on my blog keeps changing when I reload. Check that the path in your .htaccess rules matches where the supercache directory is. You may have to hardcode it. Or use the plugin in PHP or legacy caching mode.
497
  21. If you see garbage in your browser after enabling compression in the plugin, compression may already be enabled in your web server. In Apache you must disable mod_deflate, or in PHP zlib compression may be enabled. You can disable that in three ways. If you have root access, edit your php.ini and find the zlib.output_compression setting and make sure it's "Off" or add this line to your .htaccess:
498
 
499
  `php_flag zlib.output_compression off`
 
500
  If that doesn't work, add this line to your wp-config.php:
501
 
502
  `ini_set('zlib.output_compression', 0);`
507
  26. If certain characters do not appear correctly on your website your server may not be configured correctly. You need to tell visitors what character set is used. Go to Settings->Reading and copy the 'Encoding for pages and feeds' value. Edit the .htaccess file with all your Supercache and WordPress rewrite rules and add this at the top, replacing CHARSET with the copied value. (for example, 'UTF-8')
508
 
509
  `AddDefaultCharset CHARSET`
510
+ 27. Use [Cron View](http://wordpress.org/extend/plugins/cron-view/) to help diagnose garbage collection and preload problems. Use the plugin to make sure jobs are scheduled and for what time. Look for the wp_cache_gc and wp_cache_full_preload_hook jobs.
511
 
512
 
513
  == CDN ==
wp-cache-base.php CHANGED
@@ -12,10 +12,10 @@ if (!class_exists('CacheMeta')) {
12
 
13
  // We want to be able to identify each blog in a WordPress MU install
14
  $blogcacheid = '';
15
- if( defined( 'WP_ALLOW_MULTISITE' ) ) {
16
  $blogcacheid = 'blog'; // main blog
17
  if( defined( 'SUBDOMAIN_INSTALL' ) && constant( 'SUBDOMAIN_INSTALL' ) == true ) {
18
- $blogcacheid = $_SERVER['HTTP_HOST'];
19
  } else {
20
  $request_uri = preg_replace('/[ <>\'\"\r\n\t\(\)]/', '', str_replace( '..', '', $_SERVER['REQUEST_URI'] ) );
21
  if( strpos( $request_uri, '/', 1 ) ) {
12
 
13
  // We want to be able to identify each blog in a WordPress MU install
14
  $blogcacheid = '';
15
+ if ( defined( 'VHOST' ) || ( defined( 'WP_ALLOW_MULTISITE' ) && constant( 'WP_ALLOW_MULTISITE' ) == true ) ) {
16
  $blogcacheid = 'blog'; // main blog
17
  if( defined( 'SUBDOMAIN_INSTALL' ) && constant( 'SUBDOMAIN_INSTALL' ) == true ) {
18
+ $blogcacheid = $_SERVER['SERVER_NAME'];
19
  } else {
20
  $request_uri = preg_replace('/[ <>\'\"\r\n\t\(\)]/', '', str_replace( '..', '', $_SERVER['REQUEST_URI'] ) );
21
  if( strpos( $request_uri, '/', 1 ) ) {
wp-cache-phase1.php CHANGED
@@ -10,6 +10,9 @@ if( !include( WP_CONTENT_DIR . '/wp-cache-config.php' ) )
10
  if( !defined( 'WPCACHEHOME' ) )
11
  define('WPCACHEHOME', dirname(__FILE__).'/');
12
 
 
 
 
13
  include( WPCACHEHOME . 'wp-cache-base.php');
14
 
15
  if( $blogcacheid != '' ) {
@@ -58,7 +61,7 @@ function gzip_accepted(){
58
  if ( 1 == ini_get( 'zlib.output_compression' ) || "on" == strtolower( ini_get( 'zlib.output_compression' ) ) ) // don't compress WP-Cache data files when PHP is already doing it
59
  return false;
60
 
61
- if (strpos($_SERVER['HTTP_ACCEPT_ENCODING'], 'gzip') === false) return false;
62
  return 'gzip';
63
  }
64
 
@@ -80,14 +83,16 @@ if ( $wp_cache_object_cache ) {
80
  return;
81
  }
82
 
83
- if( false == @is_dir( $blog_cache_dir ) ) {
84
- @mkdir( $cache_path . "blogs" );
85
- @mkdir( $blog_cache_dir );
86
- }
87
-
88
- if( false == @is_dir( $blog_cache_dir . 'meta' ) )
89
- @mkdir( $blog_cache_dir . 'meta' );
90
 
 
 
 
91
 
92
  $wp_start_time = microtime();
93
 
@@ -95,7 +100,7 @@ function get_wp_cache_key( $url = false ) {
95
  global $wp_cache_request_uri, $wp_cache_gzip_encoding;
96
  if ( !$url )
97
  $url = $wp_cache_request_uri;
98
- return do_cacheaction( 'wp_cache_key', $_SERVER['HTTP_HOST'] . intval( $_SERVER[ 'SERVER_PORT' ] ) . preg_replace('/#.*$/', '', str_replace( '/index.php', '/', $url ) ) . $wp_cache_gzip_encoding . wp_cache_get_cookies_values() );
99
  }
100
 
101
  function wp_super_cache_init() {
@@ -114,7 +119,7 @@ function wp_super_cache_init() {
114
 
115
  function wp_cache_serve_cache_file() {
116
  global $key, $blogcacheid, $wp_cache_request_uri, $file_prefix, $blog_cache_dir, $meta_file, $cache_file, $cache_filename, $wp_super_cache_debug, $meta_pathname, $wp_cache_gzip_encoding, $meta;
117
- global $wp_cache_object_cache, $cache_compression, $wp_cache_slash_check, $wp_supercache_304, $wp_cache_home_path;
118
 
119
  extract( wp_super_cache_init() );
120
 
@@ -123,6 +128,11 @@ function wp_cache_serve_cache_file() {
123
  return false;
124
  }
125
 
 
 
 
 
 
126
  if ( $wp_cache_object_cache && wp_cache_get_cookies_values() == '' ) {
127
  if ( !empty( $_GET ) ) {
128
  if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Non empty GET request. Not serving request from object cache", 1 );
@@ -258,7 +268,7 @@ function wp_cache_serve_cache_file() {
258
  die();
259
  }
260
  } else {
261
- if ( $meta[ 'dynamic' ] ) {
262
  if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Serving wp-cache dynamic file", 5 );
263
  if ( $ungzip ) {
264
  $cache = file_get_contents( $cache_file );
@@ -384,10 +394,23 @@ function wp_cache_check_mobile( $cache_key ) {
384
  if ( !isset( $wp_cache_mobile_enabled ) || false == $wp_cache_mobile_enabled )
385
  return $cache_key;
386
 
 
 
 
 
 
 
 
 
 
 
387
  if ( !isset( $_SERVER[ "HTTP_USER_AGENT" ] ) ) {
388
  return $cache_key;
389
  }
390
 
 
 
 
391
  $browsers = explode( ',', $wp_cache_mobile_browsers );
392
  $user_agent = strtolower( $_SERVER['HTTP_USER_AGENT'] );
393
  foreach ($browsers as $browser) {
@@ -410,7 +433,7 @@ function wp_cache_check_mobile( $cache_key ) {
410
  }
411
  }
412
  }
413
- $accept = strtolower($_SERVER['HTTP_ACCEPT']);
414
  if (strpos($accept, 'wap') !== false) {
415
  return $cache_key . '-' . 'wap';
416
  }
@@ -418,11 +441,12 @@ function wp_cache_check_mobile( $cache_key ) {
418
  if (isset($_SERVER['ALL_HTTP']) && strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') !== false) {
419
  return $cache_key . '-' . 'operamini';
420
  }
 
421
  return $cache_key;
422
  }
423
 
424
  function wp_cache_debug( $message, $level = 1 ) {
425
- global $wp_cache_debug_level, $wp_cache_debug_log, $cache_path, $wp_cache_debug_ip, $wp_super_cache_debug;
426
 
427
  if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug == false )
428
  return false;
@@ -430,11 +454,6 @@ function wp_cache_debug( $message, $level = 1 ) {
430
  if ( isset( $wp_cache_debug_log ) == false )
431
  return false;
432
 
433
- if ( isset( $wp_cache_debug_level ) == false )
434
- $wp_cache_debug_level = 1;
435
- if ( $wp_cache_debug_level < $level )
436
- return false;
437
-
438
  if ( isset( $wp_cache_debug_ip ) && $wp_cache_debug_ip != '' && $wp_cache_debug_ip != $_SERVER[ 'REMOTE_ADDR' ] )
439
  return false;
440
 
@@ -449,6 +468,8 @@ function wp_cache_user_agent_is_rejected() {
449
  if (!function_exists('apache_request_headers')) return false;
450
  $headers = apache_request_headers();
451
  if (!isset($headers["User-Agent"])) return false;
 
 
452
  foreach ($cache_rejected_user_agent as $expr) {
453
  if (strlen($expr) > 0 && stristr($headers["User-Agent"], $expr))
454
  return true;
@@ -456,9 +477,14 @@ function wp_cache_user_agent_is_rejected() {
456
  return false;
457
  }
458
 
459
- function get_supercache_dir() {
460
  global $cache_path;
461
- return $cache_path . 'supercache/' . trailingslashit( strtolower( preg_replace( '/:.*$/', '', str_replace( 'http://', '', get_option( 'home' ) ) ) ) );
 
 
 
 
 
462
  }
463
  function get_current_url_supercache_dir( $post_id = 0 ) {
464
  global $cached_direct_pages, $cache_path, $wp_cache_request_uri;
@@ -468,14 +494,44 @@ function get_current_url_supercache_dir( $post_id = 0 ) {
468
  return $saved_supercache_dir[ $post_id ];
469
  }
470
 
 
471
  if ( $post_id != 0 ) {
472
- $uri = str_replace( site_url(), '', get_permalink( $post_id ) );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
473
  } else {
474
  $uri = strtolower( $wp_cache_request_uri );
475
  }
476
  $uri = preg_replace('/[ <>\'\"\r\n\t\(\)]/', '', str_replace( '/index.php', '/', str_replace( '..', '', preg_replace("/(\?.*)?$/", '', $uri ) ) ) );
477
  $uri = str_replace( '\\', '', $uri );
478
- $dir = preg_replace( '/:.*$/', '', $_SERVER["HTTP_HOST"] ) . $uri; // To avoid XSS attacks
479
  if ( function_exists( "apply_filters" ) ) {
480
  $dir = apply_filters( 'supercache_dir', $dir );
481
  } else {
@@ -487,7 +543,8 @@ function get_current_url_supercache_dir( $post_id = 0 ) {
487
  }
488
  $dir = str_replace( '//', '/', $dir );
489
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "supercache dir: $dir", 5 );
490
- $saved_supercache_dir[ $post_id ] = $dir;
 
491
  return $dir;
492
  }
493
 
@@ -523,7 +580,7 @@ function get_all_supercache_filenames( $dir = '' ) {
523
 
524
  function supercache_filename() {
525
  //Add support for https and http caching
526
- $is_https = ('on' == strtolower($_SERVER['HTTPS']) || 'https' == strtolower($_SERVER['HTTP_X_FORWARDED_PROTO'])); //Also supports https requests coming from an nginx reverse proxy
527
  $extra_str = $is_https ? '-https' : '';
528
 
529
  if ( function_exists( "apply_filters" ) ) {
@@ -557,7 +614,7 @@ function get_oc_key( $url = false ) {
557
  global $wp_cache_gzip_encoding;
558
 
559
  if ( $url ) {
560
- $key = intval( $_SERVER[ 'SERVER_PORT' ] ) . strtolower( preg_replace( '/:.*$/', '', $_SERVER[ "HTTP_HOST" ] ) ) . $url;
561
  } else {
562
  $key = get_current_url_supercache_dir();
563
  }
@@ -568,6 +625,9 @@ function wp_supercache_cache_for_admins() {
568
  if ( isset( $_GET[ 'preview' ] ) || function_exists( "is_admin" ) && is_admin() )
569
  return $cookies;
570
 
 
 
 
571
  $cookie_keys = array( 'wordpress_logged_in', 'comment_author_' );
572
  reset( $_COOKIE );
573
  foreach( $_COOKIE as $cookie => $val ) {
10
  if( !defined( 'WPCACHEHOME' ) )
11
  define('WPCACHEHOME', dirname(__FILE__).'/');
12
 
13
+ if ( false == isset( $_SERVER[ 'SERVER_NAME' ] ) && true == isset( $_SERVER[ 'HTTP_HOST' ] ) )
14
+ $_SERVER[ 'SERVER_NAME' ] = $_SERVER[ 'HTTP_HOST' ];
15
+
16
  include( WPCACHEHOME . 'wp-cache-base.php');
17
 
18
  if( $blogcacheid != '' ) {
61
  if ( 1 == ini_get( 'zlib.output_compression' ) || "on" == strtolower( ini_get( 'zlib.output_compression' ) ) ) // don't compress WP-Cache data files when PHP is already doing it
62
  return false;
63
 
64
+ if ( isset( $_SERVER[ 'HTTP_ACCEPT_ENCODING' ] ) && strpos( $_SERVER[ 'HTTP_ACCEPT_ENCODING' ], 'gzip' ) === false ) return false;
65
  return 'gzip';
66
  }
67
 
83
  return;
84
  }
85
 
86
+ function setup_blog_cache_dir() {
87
+ global $blog_cache_dir, $cache_path;
88
+ if( false == @is_dir( $blog_cache_dir ) ) {
89
+ @mkdir( $cache_path . "blogs" );
90
+ @mkdir( $blog_cache_dir );
91
+ }
 
92
 
93
+ if( false == @is_dir( $blog_cache_dir . 'meta' ) )
94
+ @mkdir( $blog_cache_dir . 'meta' );
95
+ }
96
 
97
  $wp_start_time = microtime();
98
 
100
  global $wp_cache_request_uri, $wp_cache_gzip_encoding;
101
  if ( !$url )
102
  $url = $wp_cache_request_uri;
103
+ return do_cacheaction( 'wp_cache_key', $_SERVER['SERVER_NAME'] . intval( $_SERVER[ 'SERVER_PORT' ] ) . preg_replace('/#.*$/', '', str_replace( '/index.php', '/', $url ) ) . $wp_cache_gzip_encoding . wp_cache_get_cookies_values() );
104
  }
105
 
106
  function wp_super_cache_init() {
119
 
120
  function wp_cache_serve_cache_file() {
121
  global $key, $blogcacheid, $wp_cache_request_uri, $file_prefix, $blog_cache_dir, $meta_file, $cache_file, $cache_filename, $wp_super_cache_debug, $meta_pathname, $wp_cache_gzip_encoding, $meta;
122
+ global $wp_cache_object_cache, $cache_compression, $wp_cache_slash_check, $wp_supercache_304, $wp_cache_home_path, $wp_cache_no_cache_for_get;
123
 
124
  extract( wp_super_cache_init() );
125
 
128
  return false;
129
  }
130
 
131
+ if ( $wp_cache_no_cache_for_get && false == empty( $_GET ) ) {
132
+ if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Non empty GET request. Caching disabled on settings page.", 1 );
133
+ return false;
134
+ }
135
+
136
  if ( $wp_cache_object_cache && wp_cache_get_cookies_values() == '' ) {
137
  if ( !empty( $_GET ) ) {
138
  if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Non empty GET request. Not serving request from object cache", 1 );
268
  die();
269
  }
270
  } else {
271
+ if ( isset( $meta[ 'dynamic' ] ) ) {
272
  if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Serving wp-cache dynamic file", 5 );
273
  if ( $ungzip ) {
274
  $cache = file_get_contents( $cache_file );
394
  if ( !isset( $wp_cache_mobile_enabled ) || false == $wp_cache_mobile_enabled )
395
  return $cache_key;
396
 
397
+ // allow plugins to short circuit mobile check. Cookie, extra UA checks?
398
+ switch( do_cacheaction( 'wp_cache_check_mobile', $cache_key ) ) {
399
+ case "normal":
400
+ return $cache_key;
401
+ break;
402
+ case "mobile":
403
+ return $cache_key . "_mobile";
404
+ break;
405
+ }
406
+
407
  if ( !isset( $_SERVER[ "HTTP_USER_AGENT" ] ) ) {
408
  return $cache_key;
409
  }
410
 
411
+ if ( do_cacheaction( 'disable_mobile_check', false ) )
412
+ return $cache_key;
413
+
414
  $browsers = explode( ',', $wp_cache_mobile_browsers );
415
  $user_agent = strtolower( $_SERVER['HTTP_USER_AGENT'] );
416
  foreach ($browsers as $browser) {
433
  }
434
  }
435
  }
436
+ $accept = isset( $_SERVER[ 'HTTP_ACCEPT' ] ) ? strtolower( $_SERVER[ 'HTTP_ACCEPT' ] ) : '';
437
  if (strpos($accept, 'wap') !== false) {
438
  return $cache_key . '-' . 'wap';
439
  }
441
  if (isset($_SERVER['ALL_HTTP']) && strpos(strtolower($_SERVER['ALL_HTTP']), 'operamini') !== false) {
442
  return $cache_key . '-' . 'operamini';
443
  }
444
+
445
  return $cache_key;
446
  }
447
 
448
  function wp_cache_debug( $message, $level = 1 ) {
449
+ global $wp_cache_debug_log, $cache_path, $wp_cache_debug_ip, $wp_super_cache_debug;
450
 
451
  if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug == false )
452
  return false;
454
  if ( isset( $wp_cache_debug_log ) == false )
455
  return false;
456
 
 
 
 
 
 
457
  if ( isset( $wp_cache_debug_ip ) && $wp_cache_debug_ip != '' && $wp_cache_debug_ip != $_SERVER[ 'REMOTE_ADDR' ] )
458
  return false;
459
 
468
  if (!function_exists('apache_request_headers')) return false;
469
  $headers = apache_request_headers();
470
  if (!isset($headers["User-Agent"])) return false;
471
+ if ( false == is_array( $cache_rejected_user_agent ) )
472
+ return false;
473
  foreach ($cache_rejected_user_agent as $expr) {
474
  if (strlen($expr) > 0 && stristr($headers["User-Agent"], $expr))
475
  return true;
477
  return false;
478
  }
479
 
480
+ function get_supercache_dir( $blog_id = 0 ) {
481
  global $cache_path;
482
+ if ( $blog_id == 0 ) {
483
+ $home = get_option( 'home' );
484
+ } else {
485
+ $home = get_blog_option( $blog_id, 'home' );
486
+ }
487
+ return apply_filters( 'wp_super_cache_supercachedir', $cache_path . 'supercache/' . trailingslashit( strtolower( preg_replace( '/:.*$/', '', str_replace( 'http://', '', str_replace( 'https://', '', $home ) ) ) ) ) );
488
  }
489
  function get_current_url_supercache_dir( $post_id = 0 ) {
490
  global $cached_direct_pages, $cache_path, $wp_cache_request_uri;
494
  return $saved_supercache_dir[ $post_id ];
495
  }
496
 
497
+ $DONOTREMEMBER = 0;
498
  if ( $post_id != 0 ) {
499
+ $site_url = site_url();
500
+ $permalink = get_permalink( $post_id );
501
+ if ( false === strpos( $permalink, $site_url ) ) {
502
+ /*
503
+ * Sometimes site_url doesn't return the siteurl. See http://wordpress.org/support/topic/wp-super-cache-not-refreshing-post-after-comments-made
504
+ */
505
+ $DONOTREMEMBER = 1;
506
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "get_current_url_supercache_dir: warning! site_url ($site_url) not found in permalink ($permalink).", 1 );
507
+ if ( false === strpos( $permalink, $_SERVER[ 'SERVER_NAME' ] ) ) {
508
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "get_current_url_supercache_dir: WARNING! SERVER_NAME ({$_SERVER[ 'SERVER_NAME' ]}) not found in permalink ($permalink). ", 1 );
509
+ $p = parse_url( $permalink );
510
+ if ( is_array( $p ) ) {
511
+ $uri = $p[ 'path' ];
512
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "get_current_url_supercache_dir: WARNING! Using $uri as permalink. Used parse_url.", 1 );
513
+ } else {
514
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "get_current_url_supercache_dir: WARNING! Permalink ($permalink) could not be understood by parse_url. Using front page.", 1 );
515
+ $uri = '';
516
+ }
517
+ } else {
518
+ if ( isset( $_SERVER[ 'HTTPS' ] ) )
519
+ $protocol = ( 'on' == strtolower( $_SERVER[ 'HTTPS' ] ) ) ? 'https://' : 'http://';
520
+ else
521
+ $protocol = 'http://';
522
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "get_current_url_supercache_dir: Removing SERVER_NAME ({$_SERVER[ 'SERVER_NAME' ]}) and $protocol from permalink ($permalink). Is the url right?", 1 );
523
+ $uri = str_replace( $_SERVER[ 'SERVER_NAME' ], '', $permalink );
524
+ $uri = str_replace( $protocol, '', $uri );
525
+ }
526
+ } else {
527
+ $uri = str_replace( $site_url, '', $permalink );
528
+ }
529
  } else {
530
  $uri = strtolower( $wp_cache_request_uri );
531
  }
532
  $uri = preg_replace('/[ <>\'\"\r\n\t\(\)]/', '', str_replace( '/index.php', '/', str_replace( '..', '', preg_replace("/(\?.*)?$/", '', $uri ) ) ) );
533
  $uri = str_replace( '\\', '', $uri );
534
+ $dir = preg_replace( '/:.*$/', '', $_SERVER["SERVER_NAME"] ) . $uri; // To avoid XSS attacks
535
  if ( function_exists( "apply_filters" ) ) {
536
  $dir = apply_filters( 'supercache_dir', $dir );
537
  } else {
543
  }
544
  $dir = str_replace( '//', '/', $dir );
545
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "supercache dir: $dir", 5 );
546
+ if ( $DONOTREMEMBER == 0 )
547
+ $saved_supercache_dir[ $post_id ] = $dir;
548
  return $dir;
549
  }
550
 
580
 
581
  function supercache_filename() {
582
  //Add support for https and http caching
583
+ $is_https = ( ( isset( $_SERVER[ 'HTTPS' ] ) && 'on' == strtolower( $_SERVER[ 'HTTPS' ] ) ) || ( isset( $_SERVER[ 'HTTP_X_FORWARDED_PROTO' ] ) && 'https' == strtolower( $_SERVER[ 'HTTP_X_FORWARDED_PROTO' ] ) ) ); //Also supports https requests coming from an nginx reverse proxy
584
  $extra_str = $is_https ? '-https' : '';
585
 
586
  if ( function_exists( "apply_filters" ) ) {
614
  global $wp_cache_gzip_encoding;
615
 
616
  if ( $url ) {
617
+ $key = intval( $_SERVER[ 'SERVER_PORT' ] ) . strtolower( preg_replace( '/:.*$/', '', $_SERVER[ "SERVER_NAME" ] ) ) . $url;
618
  } else {
619
  $key = get_current_url_supercache_dir();
620
  }
625
  if ( isset( $_GET[ 'preview' ] ) || function_exists( "is_admin" ) && is_admin() )
626
  return $cookies;
627
 
628
+ if ( false == apply_filters( 'wp_supercache_remove_cookies', true ) )
629
+ return true;
630
+
631
  $cookie_keys = array( 'wordpress_logged_in', 'comment_author_' );
632
  reset( $_COOKIE );
633
  foreach( $_COOKIE as $cookie => $val ) {
wp-cache-phase2.php CHANGED
@@ -1,13 +1,14 @@
1
  <?php
2
 
3
  function wp_cache_phase2() {
4
- global $wpsc_settings;
5
  global $cache_filename, $cache_acceptable_files, $wp_cache_gzip_encoding, $super_cache_enabled, $cache_rebuild_files, $wp_cache_last_gc;
6
- global $cache_max_time, $wp_cache_request_uri, $super_cache_enabled, $wp_cache_object_cache, $cache_time_interval;
7
  global $cache_enabled, $wp_cache_gmt_offset, $wp_cache_blog_charset, $cache_schedule_type, $cache_scheduled_time, $cache_schedule_interval;
8
 
9
- if ( $cache_enabled == false )
 
10
  return false;
 
11
 
12
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'In WP Cache Phase 2', 5 );
13
 
@@ -17,7 +18,11 @@ function wp_cache_phase2() {
17
  wp_cache_mutex_init();
18
  if(function_exists('add_action') && ( !defined( 'WPLOCKDOWN' ) || ( defined( 'WPLOCKDOWN' ) && constant( 'WPLOCKDOWN' ) == '0' ) ) ) {
19
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Setting up WordPress actions', 5 );
 
 
 
20
  // Post ID is received
 
21
  add_action('publish_post', 'wp_cache_post_edit', 0);
22
  add_action('edit_post', 'wp_cache_post_change', 0); // leaving a comment called edit_post
23
  add_action('delete_post', 'wp_cache_post_edit', 0);
@@ -31,13 +36,19 @@ function wp_cache_phase2() {
31
  // No post_id is available
32
  add_action('switch_theme', 'wp_cache_no_postid', 99);
33
  add_action('edit_user_profile_update', 'wp_cache_no_postid', 99);
34
- add_action( 'wp_update_nav_menu', 'wp_cache_clear_cache' );
35
  add_action('wp_cache_gc','wp_cache_gc_cron');
 
36
  add_filter( 'supercache_filename_str', 'wp_cache_check_mobile' );
37
 
38
  do_cacheaction( 'add_cacheaction' );
39
  }
40
 
 
 
 
 
 
41
  if ( is_admin() ) {
42
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching wp-admin requests.', 5 );
43
  return false;
@@ -121,6 +132,8 @@ if ( !function_exists( 'wp_cache_user_agent_is_rejected' ) ) {
121
  if (!function_exists('apache_request_headers')) return false;
122
  $headers = apache_request_headers();
123
  if (!isset($headers["User-Agent"])) return false;
 
 
124
  foreach ($cache_rejected_user_agent as $expr) {
125
  if (strlen($expr) > 0 && stristr($headers["User-Agent"], $expr))
126
  return true;
@@ -153,6 +166,8 @@ function wp_cache_is_rejected($uri) {
153
  if( strstr( $uri, $u ) )
154
  return true; // we don't allow caching of wp-admin for security reasons
155
  }
 
 
156
  foreach ( $cache_rejected_uri as $expr ) {
157
  if( $expr != '' && @preg_match( "~$expr~", $uri ) )
158
  return true;
@@ -175,6 +190,7 @@ function wp_cache_mutex_init() {
175
 
176
  $mutex = false;
177
  if ($use_flock ) {
 
178
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Created mutex lock on filename: {$blog_cache_dir}{$mutex_filename}", 5 );
179
  $mutex = @fopen( $blog_cache_dir . $mutex_filename, 'w' );
180
  } else {
@@ -225,46 +241,73 @@ function wp_cache_writers_exit() {
225
  }
226
  }
227
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
228
  function wp_cache_ob_callback( $buffer ) {
229
- global $wp_cache_pages;
230
  $buffer = apply_filters( 'wp_cache_ob_callback_filter', $buffer );
231
  if( defined( 'DONOTCACHEPAGE' ) ) {
232
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'DONOTCACHEPAGE defined. Caching disabled.', 2 );
233
  return $buffer;
234
  }
235
 
236
- if ( isset( $wp_cache_pages[ 'single' ] ) && $wp_cache_pages[ 'single' ] == 1 && is_single() ) {
237
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching single post.', 2 );
238
  return $buffer;
239
- } elseif ( isset( $wp_cache_pages[ 'pages' ] ) && $wp_cache_pages[ 'pages' ] == 1 && is_page() ) {
240
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching single page.', 2 );
241
  return $buffer;
242
- } elseif ( isset( $wp_cache_pages[ 'archives' ] ) && $wp_cache_pages[ 'archives' ] == 1 && is_archive() ) {
243
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching archive page.', 2 );
244
  return $buffer;
245
- } elseif ( isset( $wp_cache_pages[ 'tag' ] ) && $wp_cache_pages[ 'tag' ] == 1 && is_tag() ) {
246
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching tag page.', 2 );
247
  return $buffer;
248
- } elseif ( isset( $wp_cache_pages[ 'category' ] ) && $wp_cache_pages[ 'category' ] == 1 && is_category() ) {
249
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching category page.', 2 );
250
  return $buffer;
251
- } elseif ( isset( $wp_cache_pages[ 'frontpage' ] ) && $wp_cache_pages[ 'frontpage' ] == 1 && is_front_page() ) {
252
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching front page.', 2 );
253
  return $buffer;
254
- } elseif ( isset( $wp_cache_pages[ 'home' ] ) && $wp_cache_pages[ 'home' ] == 1 && is_home() ) {
255
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching home page.', 2 );
256
  return $buffer;
257
- } elseif ( isset( $wp_cache_pages[ 'search' ] ) && $wp_cache_pages[ 'search' ] == 1 && is_search() ) {
258
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching search page.', 2 );
259
  return $buffer;
260
- } elseif ( isset( $wp_cache_pages[ 'author' ] ) && $wp_cache_pages[ 'author' ] == 1 && is_author() ) {
261
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching author page.', 2 );
262
  return $buffer;
263
- } elseif ( isset( $wp_cache_pages[ 'feed' ] ) && $wp_cache_pages[ 'feed' ] == 1 && is_feed() ) {
264
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching feed.', 2 );
265
  return $buffer;
266
  }
267
 
 
 
 
268
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Output buffer callback', 4 );
269
 
270
  $buffer = &wp_cache_get_ob( $buffer );
@@ -284,7 +327,6 @@ function wp_cache_append_tag( &$buffer ) {
284
  }
285
 
286
  function wp_cache_get_ob(&$buffer) {
287
- global $wpsc_settings;
288
  global $cache_enabled, $cache_path, $cache_filename, $meta_file, $wp_start_time, $supercachedir;
289
  global $new_cache, $wp_cache_meta, $file_expired, $blog_id, $cache_compression;
290
  global $wp_cache_gzip_encoding, $super_cache_enabled, $cached_direct_pages;
@@ -314,7 +356,7 @@ function wp_cache_get_ob(&$buffer) {
314
  }
315
  }
316
 
317
- if (!preg_match('/(<\/html>|<\/rss>|<\/feed>|<\/urlset)/i',$buffer) ) {
318
  $new_cache = false;
319
  if( false === strpos( $_SERVER[ 'REQUEST_URI' ], 'robots.txt' ) ) {
320
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) {
@@ -357,7 +399,7 @@ function wp_cache_get_ob(&$buffer) {
357
 
358
  $supercacheonly = false;
359
  if( $super_cache_enabled ) {
360
- if ( wp_cache_get_cookies_values() == '' ) {
361
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Anonymous user detected. Only creating Supercache file.", 3 );
362
  $supercacheonly = true;
363
  }
@@ -382,7 +424,7 @@ function wp_cache_get_ob(&$buffer) {
382
  }
383
 
384
  if ( !$cache_enabled ) {
385
- if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( '', 5 );
386
  wp_cache_writers_exit();
387
  return $buffer . "\n<!-- Page not cached by WP Super Cache. Check your settings page. $cache_error -->";
388
  }
@@ -537,6 +579,8 @@ function wp_cache_get_ob(&$buffer) {
537
  @unlink( $tmp_wpcache_filename );
538
  } else {
539
  if ( !rename( $tmp_wpcache_filename, $blog_cache_dir . $cache_filename ) ) {
 
 
540
  unlink( $blog_cache_dir . $cache_filename );
541
  rename( $tmp_wpcache_filename, $blog_cache_dir . $cache_filename );
542
  }
@@ -562,7 +606,7 @@ function wp_cache_get_ob(&$buffer) {
562
  $added_cache = 1;
563
  }
564
  }
565
- if( $php_fd ) {
566
  fclose( $php_fd );
567
  if ( $php_fname == $supercachedir . $home_url[ 'path' ] . supercache_filename() . '.php' && !( $wp_cache_is_home ) ) {
568
  wp_cache_writers_exit();
@@ -675,7 +719,11 @@ function prune_super_cache( $directory, $force = false, $rename = false ) {
675
  if( !$rename ) {
676
  @rmdir( $entry );
677
  $log++;
678
- if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "gc: deleted $entry", 2 );
 
 
 
 
679
  }
680
  }
681
  }
@@ -686,9 +734,11 @@ function prune_super_cache( $directory, $force = false, $rename = false ) {
686
  if( in_array( $directory, $protected_directories ) )
687
  $oktodelete = false;
688
  if( $oktodelete && !$rename ) {
 
689
  @unlink( $directory );
690
  $log++;
691
  } elseif( $oktodelete && $rename ) {
 
692
  wp_cache_rebuild_or_delete( $directory );
693
  $log++;
694
  }
@@ -735,7 +785,7 @@ function wp_cache_phase2_clean_expired( $file_prefix, $force = false ) {
735
  if( is_dir( $blog_cache_dir . $file ) == false && (@filemtime($blog_cache_dir . $file) + $cache_max_time) <= $now ) {
736
  if( substr( $file, -9 ) != '.htaccess' ) {
737
  @unlink($blog_cache_dir . $file);
738
- if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Deleting $blog_cache_dir{$file}", 5 );
739
  }
740
  }
741
  }
@@ -808,7 +858,7 @@ function wp_cache_shutdown_callback() {
808
  $wp_cache_meta[ 'headers' ][ 'Content-Type' ] = "Content-Type: $value";
809
  }
810
 
811
- if ( !$supercacheonly && !$wp_cache_not_logged_in && $new_cache ) {
812
  if( !isset( $wp_cache_meta[ 'dynamic' ] ) && $wp_cache_gzip_encoding && !in_array( 'Content-Encoding: ' . $wp_cache_gzip_encoding, $wp_cache_meta[ 'headers' ] ) ) {
813
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Sending gzip headers.", 2 );
814
  $wp_cache_meta[ 'headers' ][ 'Content-Encoding' ] = 'Content-Encoding: ' . $wp_cache_gzip_encoding;
@@ -822,7 +872,7 @@ function wp_cache_shutdown_callback() {
822
  $tmp_meta_filename = $blog_cache_dir . 'meta/' . uniqid( mt_rand(), true ) . '.tmp';
823
  $fr = @fopen( $tmp_meta_filename, 'w');
824
  if( !$fr )
825
- @mkdir( $blog_cache_dir . 'meta' );
826
  $fr = @fopen( $tmp_meta_filename, 'w');
827
  if ( $fr ) {
828
  fputs($fr, $serial);
@@ -843,6 +893,8 @@ function wp_cache_shutdown_callback() {
843
  }
844
  wp_cache_writers_exit();
845
  }
 
 
846
  }
847
  global $time_to_gc_cache;
848
  if( isset( $time_to_gc_cache ) && $time_to_gc_cache == 1 ) {
@@ -863,9 +915,10 @@ function wp_cache_get_postid_from_comment( $comment_id, $status = 'NA' ) {
863
  $comment[ 'comment_approved' ] = $status;
864
  }
865
 
866
- if ( ( $status == 'trash' || $status == 'spam' ) && $comment[ 'comment_approved' ] != 1 ) {
867
  // don't modify cache if moderated comments are trashed or spammed
868
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated comment deleted or spammed. Don't delete any cache files.", 4 );
 
869
  return wp_cache_post_id();
870
  }
871
  $postid = $comment['comment_post_ID'];
@@ -874,16 +927,20 @@ function wp_cache_get_postid_from_comment( $comment_id, $status = 'NA' ) {
874
  if ( !preg_match('/wp-admin\//', $wp_cache_request_uri) ) {
875
  if ( $comment['comment_approved'] == 'delete' && ( isset( $comment[ 'old_comment_approved' ] ) && $comment[ 'old_comment_approved' ] == 0 ) ) { // do nothing if moderated comments are deleted
876
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated comment deleted. Don't delete any cache files.", 4 );
 
877
  return $postid;
878
  } elseif ( $comment['comment_approved'] == 'spam' ) {
879
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Spam comment. Don't delete any cache files.", 4 );
 
880
  return $postid;
881
  } elseif( $comment['comment_approved'] == '0' ) {
882
  if ( $comment[ 'content_type' ] == '' ) {
883
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated comment. Don't delete supercache file until comment approved.", 4 );
884
  $super_cache_enabled = 0; // don't remove the super cache static file until comment is approved
 
885
  } else {
886
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated ping or trackback. Not deleting cache files..", 4 );
 
887
  return $postid;
888
  }
889
  }
@@ -900,26 +957,50 @@ function wp_cache_get_postid_from_comment( $comment_id, $status = 'NA' ) {
900
  }
901
  }
902
 
 
 
 
 
 
 
903
  /* Clear out the cache directory. */
904
- function wp_cache_clear_cache() {
905
  global $cache_path, $wp_cache_object_cache;
906
  if ( $wp_cache_object_cache ) {
907
  reset_oc_version();
908
  } else {
909
- prune_super_cache( $cache_path . 'supercache/', true );
910
- prune_super_cache( $cache_path, true );
 
 
 
 
 
 
 
911
  }
912
  }
913
 
 
914
  function wp_cache_post_edit($post_id) {
915
  global $wp_cache_clear_on_post_edit, $cache_path, $blog_cache_dir;
 
 
 
 
 
 
 
 
 
 
916
  if( $wp_cache_clear_on_post_edit ) {
917
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Clearing cache $blog_cache_dir and {$cache_path}supercache/ on post edit per config.", 2 );
918
  if ( $wp_cache_object_cache ) {
919
  reset_oc_version();
920
  } else {
921
  prune_super_cache( $blog_cache_dir, true );
922
- prune_super_cache( $cache_path . 'supercache/', true );
923
  }
924
  } else {
925
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Clearing cache for post $post_id on post edit.", 2 );
@@ -928,7 +1009,7 @@ function wp_cache_post_edit($post_id) {
928
  }
929
 
930
  function wp_cache_post_id_gc( $siteurl, $post_id, $all = 'all' ) {
931
- global $cache_path, $wp_cache_object_cache;
932
 
933
  if ( $wp_cache_object_cache )
934
  reset_oc_version();
@@ -949,8 +1030,11 @@ function wp_cache_post_id_gc( $siteurl, $post_id, $all = 'all' ) {
949
  prune_super_cache( $dir, true, true );
950
  do_action( 'gc_cache', 'prune', $permalink );
951
  }
952
- if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_id_gc clearing cache in {$dir}page/.", 4 );
953
- prune_super_cache( $dir . 'page/', true );
 
 
 
954
  do_action( 'gc_cache', 'prune', '/page/' );
955
  }
956
 
@@ -961,7 +1045,7 @@ function wp_cache_post_change( $post_id ) {
961
  if ($post_id == $last_processed) return $post_id;
962
  $last_processed = $post_id;
963
  $post = get_post( $post_id );
964
- if( $post->post_status == 'draft' ) {
965
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_change: draft post, not deleting any cache files.", 4 );
966
  return $post_id;
967
  }
@@ -969,9 +1053,14 @@ function wp_cache_post_change( $post_id ) {
969
  if( !wp_cache_writers_entry() )
970
  return $post_id;
971
 
972
- if ( isset( $wp_cache_refresh_single_only ) && $wp_cache_refresh_single_only && strpos( $_SERVER[ 'REQUEST_URI' ], 'wp-comments-post.php' ) ) {
973
- if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_change: comment detected. only deleting post page.", 4 );
974
- $all = false;
 
 
 
 
 
975
  } else {
976
  $all = true;
977
  }
@@ -985,7 +1074,6 @@ function wp_cache_post_change( $post_id ) {
985
  $siteurl = trailingslashit( strtolower( preg_replace( '/:.*$/', '', str_replace( 'http://', '', get_option( 'home' ) ) ) ) );
986
  // make sure the front page has a rebuild file
987
  wp_cache_post_id_gc( $siteurl, $post_id );
988
- // make sure the front page has a rebuild file
989
  if ( $all == true ) {
990
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Post change: deleting cache files in " . $cache_path . 'supercache/' . $siteurl, 4 );
991
  $files_to_check = get_all_supercache_filenames( $dir );
@@ -994,7 +1082,6 @@ function wp_cache_post_change( $post_id ) {
994
  }
995
  do_action( 'gc_cache', 'prune', 'homepage' );
996
  }
997
- wp_cache_post_id_gc( $siteurl, $post_id );
998
  if( $all == true && get_option( 'show_on_front' ) == 'page' ) {
999
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Post change: deleting page_on_front and page_for_posts pages.", 4 );
1000
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Post change: page_on_front " . get_option( 'page_on_front' ), 4 );
@@ -1087,7 +1174,7 @@ function wp_cache_gc_cron() {
1087
 
1088
  $start = time();
1089
  $num = 0;
1090
- if( false == ( $num = wp_cache_phase2_clean_expired( $file_prefix ) ) ) {
1091
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Cache Expiry cron job failed. Probably mutex locked.', 1 );
1092
  update_option( 'wpsupercache_gc_time', time() - ( $cache_time_interval - 10 ) ); // if GC failed then run it again in one minute
1093
  $msg .= __( 'Cache expiry cron job failed. Job will run again in 10 seconds.', 'wp-super-cache' ) . "\n";
1
  <?php
2
 
3
  function wp_cache_phase2() {
 
4
  global $cache_filename, $cache_acceptable_files, $wp_cache_gzip_encoding, $super_cache_enabled, $cache_rebuild_files, $wp_cache_last_gc;
5
+ global $cache_max_time, $wp_cache_request_uri, $super_cache_enabled, $wp_cache_object_cache, $cache_time_interval, $wp_cache_no_cache_for_get;
6
  global $cache_enabled, $wp_cache_gmt_offset, $wp_cache_blog_charset, $cache_schedule_type, $cache_scheduled_time, $cache_schedule_interval;
7
 
8
+ if ( $cache_enabled == false ) {
9
+ if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Caching disabled! quiting!", 1 );
10
  return false;
11
+ }
12
 
13
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'In WP Cache Phase 2', 5 );
14
 
18
  wp_cache_mutex_init();
19
  if(function_exists('add_action') && ( !defined( 'WPLOCKDOWN' ) || ( defined( 'WPLOCKDOWN' ) && constant( 'WPLOCKDOWN' ) == '0' ) ) ) {
20
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Setting up WordPress actions', 5 );
21
+
22
+ add_action( 'template_redirect', 'wp_super_cache_query_vars' );
23
+
24
  // Post ID is received
25
+ add_action('wp_trash_post', 'wp_cache_post_edit', 0);
26
  add_action('publish_post', 'wp_cache_post_edit', 0);
27
  add_action('edit_post', 'wp_cache_post_change', 0); // leaving a comment called edit_post
28
  add_action('delete_post', 'wp_cache_post_edit', 0);
36
  // No post_id is available
37
  add_action('switch_theme', 'wp_cache_no_postid', 99);
38
  add_action('edit_user_profile_update', 'wp_cache_no_postid', 99);
39
+ add_action( 'wp_update_nav_menu', 'wp_cache_clear_cache_on_menu' );
40
  add_action('wp_cache_gc','wp_cache_gc_cron');
41
+ add_action( 'clean_post_cache', 'wp_cache_post_edit' );
42
  add_filter( 'supercache_filename_str', 'wp_cache_check_mobile' );
43
 
44
  do_cacheaction( 'add_cacheaction' );
45
  }
46
 
47
+ if ( $wp_cache_no_cache_for_get && false == empty( $_GET ) && false == defined( 'DOING_CRON' ) ) {
48
+ if ( isset( $wp_super_cache_debug ) && $wp_super_cache_debug ) wp_cache_debug( "Non empty GET request. Caching disabled on settings page.", 1 );
49
+ return false;
50
+ }
51
+
52
  if ( is_admin() ) {
53
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching wp-admin requests.', 5 );
54
  return false;
132
  if (!function_exists('apache_request_headers')) return false;
133
  $headers = apache_request_headers();
134
  if (!isset($headers["User-Agent"])) return false;
135
+ if ( false == is_array( $cache_rejected_user_agent ) )
136
+ return false;
137
  foreach ($cache_rejected_user_agent as $expr) {
138
  if (strlen($expr) > 0 && stristr($headers["User-Agent"], $expr))
139
  return true;
166
  if( strstr( $uri, $u ) )
167
  return true; // we don't allow caching of wp-admin for security reasons
168
  }
169
+ if ( false == is_array( $cache_rejected_uri ) )
170
+ return false;
171
  foreach ( $cache_rejected_uri as $expr ) {
172
  if( $expr != '' && @preg_match( "~$expr~", $uri ) )
173
  return true;
190
 
191
  $mutex = false;
192
  if ($use_flock ) {
193
+ setup_blog_cache_dir();
194
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Created mutex lock on filename: {$blog_cache_dir}{$mutex_filename}", 5 );
195
  $mutex = @fopen( $blog_cache_dir . $mutex_filename, 'w' );
196
  } else {
241
  }
242
  }
243
 
244
+ function wp_super_cache_query_vars() {
245
+ global $wp_super_cache_query;
246
+ if ( is_search() )
247
+ $wp_super_cache_query[ 'is_search' ] = 1;
248
+ if ( is_page() )
249
+ $wp_super_cache_query[ 'is_page' ] = 1;
250
+ if ( is_archive() )
251
+ $wp_super_cache_query[ 'is_archive' ] = 1;
252
+ if ( is_tag() )
253
+ $wp_super_cache_query[ 'is_tag' ] = 1;
254
+ if ( is_single() )
255
+ $wp_super_cache_query[ 'is_single' ] = 1;
256
+ if ( is_category() )
257
+ $wp_super_cache_query[ 'is_category' ] = 1;
258
+ if ( is_front_page() )
259
+ $wp_super_cache_query[ 'is_front_page' ] = 1;
260
+ if ( is_home() )
261
+ $wp_super_cache_query[ 'is_home' ] = 1;
262
+ if ( is_author() )
263
+ $wp_super_cache_query[ 'is_author' ] = 1;
264
+ if ( is_feed() )
265
+ $wp_super_cache_query[ 'is_feed' ] = 1;
266
+ }
267
+
268
  function wp_cache_ob_callback( $buffer ) {
269
+ global $wp_cache_pages, $wp_query, $wp_super_cache_query;
270
  $buffer = apply_filters( 'wp_cache_ob_callback_filter', $buffer );
271
  if( defined( 'DONOTCACHEPAGE' ) ) {
272
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'DONOTCACHEPAGE defined. Caching disabled.', 2 );
273
  return $buffer;
274
  }
275
 
276
+ if ( isset( $wp_cache_pages[ 'single' ] ) && $wp_cache_pages[ 'single' ] == 1 && isset( $wp_super_cache_query[ 'is_single' ] ) ) {
277
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching single post.', 2 );
278
  return $buffer;
279
+ } elseif ( isset( $wp_cache_pages[ 'pages' ] ) && $wp_cache_pages[ 'pages' ] == 1 && isset( $wp_super_cache_query[ 'is_page' ] ) ) {
280
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching single page.', 2 );
281
  return $buffer;
282
+ } elseif ( isset( $wp_cache_pages[ 'archives' ] ) && $wp_cache_pages[ 'archives' ] == 1 && isset( $wp_super_cache_query[ 'is_archive' ] ) ) {
283
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching archive page.', 2 );
284
  return $buffer;
285
+ } elseif ( isset( $wp_cache_pages[ 'tag' ] ) && $wp_cache_pages[ 'tag' ] == 1 && isset( $wp_super_cache_query[ 'is_tag' ] ) ) {
286
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching tag page.', 2 );
287
  return $buffer;
288
+ } elseif ( isset( $wp_cache_pages[ 'category' ] ) && $wp_cache_pages[ 'category' ] == 1 && isset( $wp_super_cache_query[ 'is_category' ] ) ) {
289
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching category page.', 2 );
290
  return $buffer;
291
+ } elseif ( isset( $wp_cache_pages[ 'frontpage' ] ) && $wp_cache_pages[ 'frontpage' ] == 1 && isset( $wp_super_cache_query[ 'is_front_page' ] ) ) {
292
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching front page.', 2 );
293
  return $buffer;
294
+ } elseif ( isset( $wp_cache_pages[ 'home' ] ) && $wp_cache_pages[ 'home' ] == 1 && isset( $wp_super_cache_query[ 'is_home' ] ) ) {
295
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching home page.', 2 );
296
  return $buffer;
297
+ } elseif ( isset( $wp_cache_pages[ 'search' ] ) && $wp_cache_pages[ 'search' ] == 1 && isset( $wp_super_cache_query[ 'is_search' ] ) ) {
298
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching search page.', 2 );
299
  return $buffer;
300
+ } elseif ( isset( $wp_cache_pages[ 'author' ] ) && $wp_cache_pages[ 'author' ] == 1 && isset( $wp_super_cache_query[ 'is_author' ] ) ) {
301
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching author page.', 2 );
302
  return $buffer;
303
+ } elseif ( isset( $wp_cache_pages[ 'feed' ] ) && $wp_cache_pages[ 'feed' ] == 1 && isset( $wp_super_cache_query[ 'is_feed' ] ) ) {
304
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Not caching feed.', 2 );
305
  return $buffer;
306
  }
307
 
308
+ if ( !isset( $wp_query ) )
309
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'wp_cache_ob_callback: WARNING! $query not defined but the plugin has worked around that problem.', 4 );
310
+
311
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Output buffer callback', 4 );
312
 
313
  $buffer = &wp_cache_get_ob( $buffer );
327
  }
328
 
329
  function wp_cache_get_ob(&$buffer) {
 
330
  global $cache_enabled, $cache_path, $cache_filename, $meta_file, $wp_start_time, $supercachedir;
331
  global $new_cache, $wp_cache_meta, $file_expired, $blog_id, $cache_compression;
332
  global $wp_cache_gzip_encoding, $super_cache_enabled, $cached_direct_pages;
356
  }
357
  }
358
 
359
+ if ( !preg_match( apply_filters( 'wp_cache_eof_tags', '/(<\/html>|<\/rss>|<\/feed>|<\/urlset|<\?xml)/i' ), $buffer ) ) {
360
  $new_cache = false;
361
  if( false === strpos( $_SERVER[ 'REQUEST_URI' ], 'robots.txt' ) ) {
362
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) {
399
 
400
  $supercacheonly = false;
401
  if( $super_cache_enabled ) {
402
+ if ( wp_cache_get_cookies_values() == '' && empty( $_GET ) ) {
403
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Anonymous user detected. Only creating Supercache file.", 3 );
404
  $supercacheonly = true;
405
  }
424
  }
425
 
426
  if ( !$cache_enabled ) {
427
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Cache is not enabled. Sending buffer to browser.', 5 );
428
  wp_cache_writers_exit();
429
  return $buffer . "\n<!-- Page not cached by WP Super Cache. Check your settings page. $cache_error -->";
430
  }
579
  @unlink( $tmp_wpcache_filename );
580
  } else {
581
  if ( !rename( $tmp_wpcache_filename, $blog_cache_dir . $cache_filename ) ) {
582
+ if ( false == is_dir( $blog_cache_dir ) )
583
+ @wp_mkdir_p( $blog_cache_dir );
584
  unlink( $blog_cache_dir . $cache_filename );
585
  rename( $tmp_wpcache_filename, $blog_cache_dir . $cache_filename );
586
  }
606
  $added_cache = 1;
607
  }
608
  }
609
+ if ( isset( $php_fd ) ) {
610
  fclose( $php_fd );
611
  if ( $php_fname == $supercachedir . $home_url[ 'path' ] . supercache_filename() . '.php' && !( $wp_cache_is_home ) ) {
612
  wp_cache_writers_exit();
719
  if( !$rename ) {
720
  @rmdir( $entry );
721
  $log++;
722
+ if ( $force ) {
723
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "gc: deleted $entry, forced delete", 2 );
724
+ } else {
725
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "gc: deleted $entry, older than $cache_max_time seconds", 2 );
726
+ }
727
  }
728
  }
729
  }
734
  if( in_array( $directory, $protected_directories ) )
735
  $oktodelete = false;
736
  if( $oktodelete && !$rename ) {
737
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "prune_super_cache: deleted $directory", 5 );
738
  @unlink( $directory );
739
  $log++;
740
  } elseif( $oktodelete && $rename ) {
741
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "prune_super_cache: wp_cache_rebuild_or_delete( $directory )", 5 );
742
  wp_cache_rebuild_or_delete( $directory );
743
  $log++;
744
  }
785
  if( is_dir( $blog_cache_dir . $file ) == false && (@filemtime($blog_cache_dir . $file) + $cache_max_time) <= $now ) {
786
  if( substr( $file, -9 ) != '.htaccess' ) {
787
  @unlink($blog_cache_dir . $file);
788
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Deleting $blog_cache_dir{$file}, older than $cache_max_time seconds", 5 );
789
  }
790
  }
791
  }
858
  $wp_cache_meta[ 'headers' ][ 'Content-Type' ] = "Content-Type: $value";
859
  }
860
 
861
+ if ( $cache_enabled && !$supercacheonly && $new_cache ) {
862
  if( !isset( $wp_cache_meta[ 'dynamic' ] ) && $wp_cache_gzip_encoding && !in_array( 'Content-Encoding: ' . $wp_cache_gzip_encoding, $wp_cache_meta[ 'headers' ] ) ) {
863
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Sending gzip headers.", 2 );
864
  $wp_cache_meta[ 'headers' ][ 'Content-Encoding' ] = 'Content-Encoding: ' . $wp_cache_gzip_encoding;
872
  $tmp_meta_filename = $blog_cache_dir . 'meta/' . uniqid( mt_rand(), true ) . '.tmp';
873
  $fr = @fopen( $tmp_meta_filename, 'w');
874
  if( !$fr )
875
+ @wp_mkdir_p( $blog_cache_dir . 'meta' );
876
  $fr = @fopen( $tmp_meta_filename, 'w');
877
  if ( $fr ) {
878
  fputs($fr, $serial);
893
  }
894
  wp_cache_writers_exit();
895
  }
896
+ } else {
897
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Did not write meta file: $meta_file *$supercacheonly* *$wp_cache_not_logged_in* *$new_cache*", 2 );
898
  }
899
  global $time_to_gc_cache;
900
  if( isset( $time_to_gc_cache ) && $time_to_gc_cache == 1 ) {
915
  $comment[ 'comment_approved' ] = $status;
916
  }
917
 
918
+ if ( ( $status == 'trash' || $status == 'spam' ) && $comment[ 'old_comment_approved' ] != 1 ) {
919
  // don't modify cache if moderated comments are trashed or spammed
920
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated comment deleted or spammed. Don't delete any cache files.", 4 );
921
+ define( 'DONOTDELETECACHE', 1 );
922
  return wp_cache_post_id();
923
  }
924
  $postid = $comment['comment_post_ID'];
927
  if ( !preg_match('/wp-admin\//', $wp_cache_request_uri) ) {
928
  if ( $comment['comment_approved'] == 'delete' && ( isset( $comment[ 'old_comment_approved' ] ) && $comment[ 'old_comment_approved' ] == 0 ) ) { // do nothing if moderated comments are deleted
929
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated comment deleted. Don't delete any cache files.", 4 );
930
+ define( 'DONOTDELETECACHE', 1 );
931
  return $postid;
932
  } elseif ( $comment['comment_approved'] == 'spam' ) {
933
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Spam comment. Don't delete any cache files.", 4 );
934
+ define( 'DONOTDELETECACHE', 1 );
935
  return $postid;
936
  } elseif( $comment['comment_approved'] == '0' ) {
937
  if ( $comment[ 'content_type' ] == '' ) {
938
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated comment. Don't delete supercache file until comment approved.", 4 );
939
  $super_cache_enabled = 0; // don't remove the super cache static file until comment is approved
940
+ define( 'DONOTDELETECACHE', 1 );
941
  } else {
942
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Moderated ping or trackback. Not deleting cache files..", 4 );
943
+ define( 'DONOTDELETECACHE', 1 );
944
  return $postid;
945
  }
946
  }
957
  }
958
  }
959
 
960
+ /* Used by wp_update_nav_menu action to clear current blog's cache files when navigation menu is modified */
961
+ function wp_cache_clear_cache_on_menu() {
962
+ global $wpdb;
963
+ wp_cache_clear_cache( $wpdb->blogid );
964
+ }
965
+
966
  /* Clear out the cache directory. */
967
+ function wp_cache_clear_cache( $blog_id = 0 ) {
968
  global $cache_path, $wp_cache_object_cache;
969
  if ( $wp_cache_object_cache ) {
970
  reset_oc_version();
971
  } else {
972
+ if ( $blog_id == 0 ) {
973
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Clearing all cached files in wp_cache_clear_cache()", 4 );
974
+ prune_super_cache( $cache_path . 'supercache/', true );
975
+ prune_super_cache( $cache_path, true );
976
+ } else {
977
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Clearing all cached files for blog $blog_id in wp_cache_clear_cache()", 4 );
978
+ prune_super_cache( get_supercache_dir( $blog_id ), true );
979
+ prune_super_cache( $cache_path . 'blogs/', true );
980
+ }
981
  }
982
  }
983
 
984
+ /* check if we want to clear out all cached files on post updates, otherwise call standard wp_cache_post_change() */
985
  function wp_cache_post_edit($post_id) {
986
  global $wp_cache_clear_on_post_edit, $cache_path, $blog_cache_dir;
987
+ static $last_post_edited = -1;
988
+
989
+ if ( $post_id == $last_post_edited ) return $post_id;
990
+ $last_post_edited = $post_id;
991
+
992
+ $post = get_post( $post_id );
993
+ if ( $post->post_status != 'publish' ) {
994
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_edit: draft post, not deleting any cache files.", 4 );
995
+ return $post_id;
996
+ }
997
  if( $wp_cache_clear_on_post_edit ) {
998
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Clearing cache $blog_cache_dir and {$cache_path}supercache/ on post edit per config.", 2 );
999
  if ( $wp_cache_object_cache ) {
1000
  reset_oc_version();
1001
  } else {
1002
  prune_super_cache( $blog_cache_dir, true );
1003
+ prune_super_cache( get_supercache_dir(), true );
1004
  }
1005
  } else {
1006
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Clearing cache for post $post_id on post edit.", 2 );
1009
  }
1010
 
1011
  function wp_cache_post_id_gc( $siteurl, $post_id, $all = 'all' ) {
1012
+ global $cache_path, $wp_cache_object_cache, $wp_cache_refresh_single_only;
1013
 
1014
  if ( $wp_cache_object_cache )
1015
  reset_oc_version();
1030
  prune_super_cache( $dir, true, true );
1031
  do_action( 'gc_cache', 'prune', $permalink );
1032
  }
1033
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_id_gc clearing cache in {$dir}/page/.", 4 );
1034
+ prune_super_cache( $dir . '/page/', true );
1035
+ $supercache_home = get_supercache_dir();
1036
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_id_gc clearing cache in {$supercache_home}/page/.", 4 );
1037
+ prune_super_cache( $supercache_home . '/page/', true );
1038
  do_action( 'gc_cache', 'prune', '/page/' );
1039
  }
1040
 
1045
  if ($post_id == $last_processed) return $post_id;
1046
  $last_processed = $post_id;
1047
  $post = get_post( $post_id );
1048
+ if( $post->post_status != 'publish' ) {
1049
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_change: draft post, not deleting any cache files.", 4 );
1050
  return $post_id;
1051
  }
1053
  if( !wp_cache_writers_entry() )
1054
  return $post_id;
1055
 
1056
+ if ( isset( $wp_cache_refresh_single_only ) && $wp_cache_refresh_single_only && ( strpos( $_SERVER[ 'HTTP_REFERER' ], 'edit-comments.php' ) || strpos( $_SERVER[ 'REQUEST_URI' ], 'wp-comments-post.php' ) ) ) {
1057
+ if ( defined( 'DONOTDELETECACHE' ) ) {
1058
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_change: comment detected and it's moderated or spam. Not deleting cached files.", 4 );
1059
+ return $post_id;
1060
+ } else {
1061
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cache_post_change: comment detected. only deleting post page.", 4 );
1062
+ $all = false;
1063
+ }
1064
  } else {
1065
  $all = true;
1066
  }
1074
  $siteurl = trailingslashit( strtolower( preg_replace( '/:.*$/', '', str_replace( 'http://', '', get_option( 'home' ) ) ) ) );
1075
  // make sure the front page has a rebuild file
1076
  wp_cache_post_id_gc( $siteurl, $post_id );
 
1077
  if ( $all == true ) {
1078
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Post change: deleting cache files in " . $cache_path . 'supercache/' . $siteurl, 4 );
1079
  $files_to_check = get_all_supercache_filenames( $dir );
1082
  }
1083
  do_action( 'gc_cache', 'prune', 'homepage' );
1084
  }
 
1085
  if( $all == true && get_option( 'show_on_front' ) == 'page' ) {
1086
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Post change: deleting page_on_front and page_for_posts pages.", 4 );
1087
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "Post change: page_on_front " . get_option( 'page_on_front' ), 4 );
1174
 
1175
  $start = time();
1176
  $num = 0;
1177
+ if( false === ( $num = wp_cache_phase2_clean_expired( $file_prefix ) ) ) {
1178
  if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Cache Expiry cron job failed. Probably mutex locked.', 1 );
1179
  update_option( 'wpsupercache_gc_time', time() - ( $cache_time_interval - 10 ) ); // if GC failed then run it again in one minute
1180
  $msg .= __( 'Cache expiry cron job failed. Job will run again in 10 seconds.', 'wp-super-cache' ) . "\n";
wp-cache.php CHANGED
@@ -3,13 +3,13 @@
3
  Plugin Name: WP Super Cache
4
  Plugin URI: http://ocaoimh.ie/wp-super-cache/
5
  Description: Very fast caching plugin for WordPress.
6
- Version: 1.0
7
  Author: Donncha O Caoimh
8
  Author URI: http://ocaoimh.ie/
9
  */
10
 
11
  /* Copyright 2005-2006 Ricardo Galli Granada (email : gallir@uib.es)
12
- Copyright 2007-2011 Donncha O Caoimh (http://ocaoimh.ie/) and many others.
13
 
14
  This program is free software; you can redistribute it and/or modify
15
  it under the terms of the GNU General Public License as published by
@@ -158,7 +158,7 @@ function wp_cache_manager_error_checks() {
158
  if ( !wpsupercache_site_admin() )
159
  return false;
160
 
161
- if ( 1 == ini_get( 'safe_mode' ) || "on" == strtolower( ini_get( 'safe_mode' ) ) ) {
162
  echo '<div id="message" class="updated fade"><h3>' . __( 'Warning! PHP Safe Mode Enabled!', 'wp-super-cache' ) . '</h3><p>' .
163
  __( 'You may experience problems running this plugin because SAFE MODE is enabled.', 'wp-super-cache' ) . ' ';
164
 
@@ -235,7 +235,8 @@ function wp_cache_manager_error_checks() {
235
  }
236
 
237
  if( !is_writeable_ACLSafe( $wp_cache_config_file ) ) {
238
- define( "SUBMITDISABLED", 'disabled style="color: #aaa" ' );
 
239
  ?><div id="message" class="updated fade"><h3><?php _e( 'Read Only Mode. Configuration cannot be changed.', 'wp-super-cache' ); ?></h3>
240
  <p><?php printf( __( 'The WP Super Cache configuration file is <code>%s/wp-cache-config.php</code> and cannot be modified. That file must be writeable by the webserver to make any changes.', 'wp-super-cache' ), WP_CONTENT_DIR ); ?>
241
  <?php _e( 'A simple way of doing that is by changing the permissions temporarily using the CHMOD command or through your ftp client. Make sure it&#8217;s globally writeable and it should be fine.', 'wp-super-cache' ); ?></p>
@@ -243,7 +244,7 @@ function wp_cache_manager_error_checks() {
243
  <?php _e( 'Writeable:', 'wp-super-cache' ); ?> <code>chmod 666 <?php echo WP_CONTENT_DIR; ?>/wp-cache-config.php</code>
244
  <?php _e( 'Readonly:', 'wp-super-cache' ); ?> <code>chmod 644 <?php echo WP_CONTENT_DIR; ?>/wp-cache-config.php</code></p>
245
  </div><?php
246
- } else {
247
  define( "SUBMITDISABLED", ' ' );
248
  }
249
 
@@ -267,8 +268,8 @@ function wp_cache_manager_error_checks() {
267
  echo '<div id="message" class="updated fade"><h3>' . __( 'Mobile rewrite rules detected', 'wp-super-cache' ) . "</h3>";
268
  echo "<p>" . __( 'For best performance you should enable "Mobile device support" or delete the mobile rewrite rules in your .htaccess. Look for the 2 lines with the text "2.0\ MMP|240x320" and delete those.', 'wp-super-cache' ) . "</p><p>" . __( 'This will have no affect on ordinary users but mobile users will see uncached pages.', 'wp-super-cache' ) . "</p></div>";
269
  } elseif ( $wp_cache_mod_rewrite && $cache_enabled && $wp_cache_mobile_enabled && $scrules != '' && (
270
- false === strpos( $scrules, addcslashes( implode( '|', $wp_cache_mobile_prefixes ), ' ' ) ) ||
271
- false === strpos( $scrules, addcslashes( implode( '|', $wp_cache_mobile_browsers ), ' ' ) ) )
272
  ) {
273
  ?>
274
  <div id="message" class="updated fade"><h3><?php _e( 'Rewrite rules must be updated', 'wp-super-cache' ); ?></h3>
@@ -314,7 +315,7 @@ function wp_cache_manager_error_checks() {
314
  add_filter( 'wp_super_cache_error_checking', 'wp_cache_manager_error_checks' );
315
 
316
  function wp_cache_manager_updates() {
317
- global $wp_cache_mobile_enabled, $wp_supercache_cache_list, $wp_cache_config_file, $wp_cache_hello_world, $wp_cache_clear_on_post_edit, $cache_rebuild_files, $wp_cache_mutex_disabled, $wp_cache_not_logged_in, $wp_cache_make_known_anon, $cache_path, $wp_cache_object_cache, $_wp_using_ext_object_cache, $wp_cache_refresh_single_only, $cache_compression, $wp_cache_mod_rewrite, $wp_supercache_304, $wp_super_cache_late_init, $wp_cache_front_page_checks, $cache_page_secret;
318
 
319
  if ( !wpsupercache_site_admin() )
320
  return false;
@@ -362,6 +363,20 @@ function wp_cache_manager_updates() {
362
  }
363
  wp_cache_replace_line('^ *\$wp_super_cache_late_init', "\$wp_super_cache_late_init = " . $wp_super_cache_late_init . ";", $wp_cache_config_file);
364
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
365
  if( isset( $_POST[ 'wp_supercache_304' ] ) ) {
366
  $wp_supercache_304 = 1;
367
  } else {
@@ -499,10 +514,10 @@ if ( isset( $_GET[ 'page' ] ) && $_GET[ 'page' ] == 'wpsupercache' )
499
 
500
  function wp_cache_manager() {
501
  global $wp_cache_config_file, $valid_nonce, $supercachedir, $cache_path, $cache_enabled, $cache_compression, $super_cache_enabled, $wp_cache_hello_world;
502
- global $wp_cache_clear_on_post_edit, $cache_rebuild_files, $wp_cache_mutex_disabled, $wp_cache_mobile_enabled, $wp_cache_mobile_browsers;
503
  global $wp_cache_cron_check, $wp_cache_debug, $wp_cache_not_logged_in, $wp_cache_make_known_anon, $wp_supercache_cache_list, $cache_page_secret, $cache_home_path;
504
  global $wp_super_cache_front_page_check, $wp_cache_object_cache, $_wp_using_ext_object_cache, $wp_cache_refresh_single_only, $wp_cache_mobile_prefixes;
505
- global $wpmu_version, $cache_max_time, $wp_cache_mod_rewrite, $wp_supercache_304, $wp_super_cache_late_init, $wp_cache_front_page_checks;
506
 
507
  if ( !wpsupercache_site_admin() )
508
  return false;
@@ -523,13 +538,18 @@ function wp_cache_manager() {
523
  }
524
  $wp_cache_mobile_browsers = apply_filters( 'cached_mobile_browsers', $wp_cache_mobile_browsers ); // Allow mobile plugins access to modify the mobile UA list
525
  $wp_cache_mobile_prefixes = apply_filters( 'cached_mobile_prefixes', $wp_cache_mobile_prefixes ); // Allow mobile plugins access to modify the mobile UA prefix list
 
 
 
 
526
  $mobile_groups = apply_filters( 'cached_mobile_groups', array() ); // Group mobile user agents by capabilities. Lump them all together by default
527
  // mobile_groups = array( 'apple' => array( 'ipod', 'iphone' ), 'nokia' => array( 'nokia5800', 'symbianos' ) );
528
 
529
  if ( false == apply_filters( 'wp_super_cache_error_checking', true ) )
530
  return false;
531
 
532
- $supercachedir = $cache_path . 'supercache/' . preg_replace('/:.*$/', '', $_SERVER["HTTP_HOST"]);
 
533
  if( get_option( 'gzipcompression' ) == 1 )
534
  update_option( 'gzipcompression', 0 );
535
  if( !isset( $cache_rebuild_files ) )
@@ -603,7 +623,9 @@ jQuery(document).ready(function(){
603
  wp_cache_replace_line('^ *\$wp_cache_slash_check', "\$wp_cache_slash_check = 0;", $wp_cache_config_file);
604
  }
605
  $home_path = parse_url( site_url() );
606
- $home_path = trailingslashit( $home_path[ 'path' ] );
 
 
607
  if ( "$home_path" != "$wp_cache_home_path" )
608
  wp_cache_replace_line('^ *\$wp_cache_home_path', "\$wp_cache_home_path = '$home_path';", $wp_cache_config_file);
609
 
@@ -627,7 +649,7 @@ jQuery(document).ready(function(){
627
  wp_die( __( 'Caching must be enabled to use this feature', 'wp-super-cache' ) );
628
  echo '<a name="preload"></a>';
629
  if ( $super_cache_enabled == true && false == defined( 'DISABLESUPERCACHEPRELOADING' ) ) {
630
- global $wp_cache_preload_interval, $wp_cache_preload_on, $wp_cache_preload_email_me, $wp_cache_preload_email_volume, $wp_cache_preload_posts, $wpdb;
631
  $count = $wpdb->get_var( "SELECT count(*) FROM {$wpdb->posts} WHERE post_status = 'publish'" );
632
  if ( $count > 1000 ) {
633
  $min_refresh_interval = 720;
@@ -681,6 +703,12 @@ jQuery(document).ready(function(){
681
  $wp_cache_preload_email_volume = 'medium';
682
  }
683
  wp_cache_replace_line('^ *\$wp_cache_preload_email_volume', "\$wp_cache_preload_email_volume = '$wp_cache_preload_email_volume';", $wp_cache_config_file);
 
 
 
 
 
 
684
  if ( isset( $_POST[ 'preload_on' ] ) ) {
685
  $wp_cache_preload_on = 1;
686
  } else {
@@ -740,6 +768,9 @@ jQuery(document).ready(function(){
740
  echo '<input type="checkbox" name="preload_on" value="1" ';
741
  echo $wp_cache_preload_on == 1 ? 'checked=1' : '';
742
  echo ' /> ' . __( 'Preload mode (garbage collection only on legacy cache files. Recommended.)', 'wp-super-cache' ) . '<br />';
 
 
 
743
  echo '<input type="checkbox" name="preload_email_me" value="1" ';
744
  echo $wp_cache_preload_email_me == 1 ? 'checked=1' : '';
745
  echo ' /> ' . __( 'Send me status emails when files are refreshed.', 'wp-super-cache' ) . '<br />';
@@ -820,13 +851,22 @@ jQuery(document).ready(function(){
820
  <?php } else { ?>
821
  <label><input type='checkbox' name='cache_compression' <?php if( $cache_compression ) echo "checked"; ?> value='1'> <?php _e( 'Compress pages so they&#8217;re served more quickly to visitors.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
822
  <em><?php _e( 'Compression is disabled by default because some hosts have problems with compressed files. Switching it on and off clears the cache.', 'wp-super-cache' ); ?></em><br />
823
- <?php } ?>
824
- <?php } ?>
825
- <?php if ( 0 == $wp_cache_mod_rewrite ) { ?>
826
- <label><input type='checkbox' name='wp_supercache_304' <?php if( $wp_supercache_304 ) echo "checked"; ?> value='1'> <?php _e( '304 Not Modified browser caching. Indicate when a page has not been modified since last requested.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
827
- <em><?php _e( '304 support is disabled by default because in the past GoDaddy had problems with some of the headers used.', 'wp-super-cache' ); ?></em><br />
828
- <?php } ?>
829
- <label><input type='checkbox' name='wp_cache_not_logged_in' <?php if( $wp_cache_not_logged_in ) echo "checked"; ?> value='1'> <?php _e( 'Don&#8217;t cache pages for <acronym title="Logged in users and those that comment">known users</acronym>.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
 
 
 
 
 
 
 
 
 
830
  <label><input type='checkbox' name='wp_cache_make_known_anon' <?php if( $wp_cache_make_known_anon ) echo "checked"; ?> value='1'> <?php _e( 'Make known users anonymous so they&#8217;re served supercached static files.', 'wp-super-cache' ); ?></label><br />
831
  <label><input type='checkbox' name='cache_rebuild_files' <?php if( $cache_rebuild_files ) echo "checked"; ?> value='1'> <?php _e( 'Cache rebuild. Serve a supercache file to anonymous users while a new file is being generated.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
832
  <label><input type='checkbox' name='wp_cache_hello_world' <?php if( $wp_cache_hello_world ) echo "checked"; ?> value='1'> <?php printf( __( 'Proudly tell the world your server is <a href="%s">Stephen Fry proof</a>! (places a message in your blog&#8217;s footer)', 'wp-super-cache' ), 'https://twitter.com/#!/HibbsLupusTrust/statuses/136429993059291136' ); ?></label><br />
@@ -840,6 +880,10 @@ jQuery(document).ready(function(){
840
  <fieldset>
841
  <legend class="hidden">Advanced</legend>
842
  <label><input type='checkbox' name='wp_cache_mobile_enabled' <?php if( $wp_cache_mobile_enabled ) echo "checked"; ?> value='1'> <?php _e( 'Mobile device support. (External plugin or theme required. See the <a href="http://wordpress.org/extend/plugins/wp-super-cache/faq/">FAQ</a> for further details.)', 'wp-super-cache' ); ?></label><br />
 
 
 
 
843
  <label><input type='checkbox' name='wp_cache_clear_on_post_edit' <?php if( $wp_cache_clear_on_post_edit ) echo "checked"; ?> value='1'> <?php _e( 'Clear all cache files when a post or page is published or updated.', 'wp-super-cache' ); ?></label><br />
844
  <label><input type='checkbox' name='wp_cache_front_page_checks' <?php if( $wp_cache_front_page_checks ) echo "checked"; ?> value='1'> <?php _e( 'Extra homepage checks. (Very occasionally stops homepage caching)', 'wp-super-cache' ); ?></label><?php echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?><br />
845
  <label><input type='checkbox' name='wp_cache_refresh_single_only' <?php if( $wp_cache_refresh_single_only ) echo "checked"; ?> value='1'> <?php _e( 'Only refresh current page when comments made.', 'wp-super-cache' ); ?></label><br />
@@ -974,7 +1018,7 @@ jQuery(document).ready(function(){
974
  }
975
  }
976
 
977
- if ( preg_match( '/(Cached page generated by WP-Super-Cache on) ([0-9]*-[0-9]*-[0-9]* [0-9]*:[0-9]*:[0-9]*)/', $page[ 'body' ], $matches1 ) &&
978
  preg_match( '/(Cached page generated by WP-Super-Cache on) ([0-9]*-[0-9]*-[0-9]* [0-9]*:[0-9]*:[0-9]*)/', $page2[ 'body' ], $matches2 ) && $matches1[2] == $matches2[2] ) {
979
  echo '<p>' . sprintf( __( 'Page 1: %s', 'wp-super-cache' ), $matches1[ 2 ] ) . '</p>';
980
  echo '<p>' . sprintf( __( 'Page 2: %s', 'wp-super-cache' ), $matches2[ 2 ] ) . '</p>';
@@ -1005,7 +1049,7 @@ jQuery(document).ready(function(){
1005
  wp_nonce_field('wp-cache');
1006
  echo "</form>\n";
1007
 
1008
- if ( defined( 'WP_ALLOW_MULTISITE' ) && wpsupercache_site_admin() ) {
1009
  echo '<form name="wp_cache_content_delete" action="#listfiles" method="post">';
1010
  echo '<input type="hidden" name="wp_delete_all_cache" />';
1011
  echo '<div class="submit" style="float:left;margin-left:10px"><input id="deleteallpost" type="submit" ' . SUBMITDISABLED . 'value="' . __( 'Delete Cache On All Blogs', 'wp-super-cache' ) . ' &raquo;" />';
@@ -1015,12 +1059,13 @@ jQuery(document).ready(function(){
1015
  ?>
1016
  <h3><?php _e( 'Recommended Links and Plugins', 'wp-super-cache' ); ?></h3>
1017
  <p><?php _e( 'Caching is only one part of making a website faster. Here are some other plugins that will help:', 'wp-super-cache' ); ?></p>
1018
- <ol><li><?php printf( __( '<a href="%s">WP Minify</a> reduces the number of files served by your web server by joining Javascript and CSS files together. Alternatively you can use <a href="%s">WPSCMin</a>, a Supercache plugin that minifies cached pages. It does not however join JS/CSS files together.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/wp-minify/', 'http://lyncd.com/wpscmin/' ); ?></li>
1019
  <li><?php printf( __( '<a href="%s">Yahoo! Yslow</a> is an extension for the Firefox add-on Firebug. It analyzes web pages and suggests ways to improve their performance based on a set of rules for high performance web pages. Also try the performance tools online at <a href="%s">GTMetrix</a>.', 'wp-super-cache' ), 'http://developer.yahoo.com/yslow/', 'http://gtmetrix.com/' ); ?></li>
1020
  <li><?php printf( __( '<a href="%s">Use Google Libraries</a> allows you to load some commonly used Javascript libraries from Google webservers. Ironically it may reduce your Yslow score.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/use-google-libraries/' ); ?></li>
1021
  <li><?php printf( __( 'The <a href="%1$s">CDN Sync Tool</a> plugin will help upload files to Amazon S3/Cloudfront if you would rather not depend on origin pull. See the <a href="%2$s">plugin support forum</a> if you have any queries about this plugin.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/cdn-sync-tool/', 'http://wordpress.org/tags/cdn-sync-tool?forum_id=10' ); ?></li>
1022
  <li><?php printf( __( '<strong>Advanced users only:</strong> <a href="%s">Speed up your site with Caching and cache-control</a> explains how to make your site more cacheable with .htaccess rules.', 'wp-super-cache' ), 'http://www.askapache.com/htaccess/speed-up-your-site-with-caching-and-cache-control.html' ); ?></li>
1023
  <li><?php printf( __( '<strong>Advanced users only:</strong> Install an object cache. Choose from <a href="%s">Memcached</a>, <a href="%s">XCache</a>, <a href="%s">eAcccelerator</a> and others.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/memcached/', 'http://neosmart.net/dl.php?id=12', 'http://neosmart.net/dl.php?id=13' ); ?></li>
 
1024
  </ol>
1025
 
1026
  <?php
@@ -1037,6 +1082,7 @@ jQuery(document).ready(function(){
1037
  <p><?php printf( __( 'Please say hi to him on %s too!', 'wp-super-cache' ), '<a href="http://twitter.com/donncha/">Twitter</a>' ); ?></p>
1038
  <h3 align='center'><?php _e( 'Need Help?', 'wp-super-cache' ); ?></h3>
1039
  <ol>
 
1040
  <li><?php printf( __( '<a href="%1$s">Installation Help</a>', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/wp-super-cache/installation/' ); ?></li>
1041
  <li><?php printf( __( '<a href="%1$s">Frequently Asked Questions</a>', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/wp-super-cache/faq/' ); ?></li>
1042
  <li><?php printf( __( '<a href="%1$s">Support Forum</a>', 'wp-super-cache' ), 'http://wordpress.org/tags/wp-super-cache' ); ?></li>
@@ -1408,6 +1454,7 @@ function RecursiveFolderDelete ( $folderPath ) { // from http://www.php.net/manu
1408
  function wp_cache_edit_max_time () {
1409
  global $cache_max_time, $wp_cache_config_file, $valid_nonce, $cache_enabled, $super_cache_enabled, $cache_schedule_type, $cache_scheduled_time, $cache_schedule_interval, $cache_time_interval, $cache_gc_email_me, $wp_cache_preload_on;
1410
 
 
1411
 
1412
  if( !isset( $cache_schedule_type ) ) {
1413
  $cache_schedule_type = 'interval';
@@ -1450,13 +1497,15 @@ function wp_cache_edit_max_time () {
1450
  wp_schedule_single_event( time() + $cache_time_interval, 'wp_cache_gc' );
1451
  wp_cache_replace_line('^ *\$cache_schedule_type', "\$cache_schedule_type = '$cache_schedule_type';", $wp_cache_config_file);
1452
  wp_cache_replace_line('^ *\$cache_time_interval', "\$cache_time_interval = '$cache_time_interval';", $wp_cache_config_file);
1453
- } elseif ( $valid_nonce ) {
1454
  wp_clear_scheduled_hook( 'wp_cache_gc' );
1455
  $cache_schedule_type = 'time';
1456
  if ( $_POST[ 'cache_scheduled_time' ] == '' )
1457
  $_POST[ 'cache_scheduled_time' ] = '00:00';
1458
  $cache_scheduled_time = $_POST[ 'cache_scheduled_time' ];
1459
- $cache_schedule_interval = (int)$_POST[ 'cache_schedule_interval' ];
 
 
1460
  wp_schedule_single_event( strtotime( $cache_scheduled_time ), 'wp_cache_gc' );
1461
  wp_cache_replace_line('^ *\$cache_schedule_type', "\$cache_schedule_type = '$cache_schedule_type';", $wp_cache_config_file);
1462
  wp_cache_replace_line('^ *\$cache_schedule_interval', "\$cache_schedule_interval = '{$cache_schedule_interval}';", $wp_cache_config_file);
@@ -1466,10 +1515,16 @@ function wp_cache_edit_max_time () {
1466
  ?><fieldset class="options">
1467
  <a name='expirytime'></a>
1468
  <h3><?php _e( 'Expiry Time &amp; Garbage Collection', 'wp-super-cache' ); ?></h3><?php
 
 
 
 
 
 
1469
  $next_gc = wp_next_scheduled( 'wp_cache_gc' );
1470
- echo "<p>" . sprintf( __( 'Current server time is: %s', 'wp-super-cache' ), "<strong>" . date( 'Y-m-d H:i:s', time() ) . "</strong>" ) . "</p>";
1471
  if ( $next_gc )
1472
- echo "<p>" . sprintf( __( 'Next scheduled garbage collection will be at (YY-MM-DD H:M:S): %s', 'wp-super-cache' ), "<strong>" . date( 'Y-m-d H:i:s', $next_gc ) . "</strong>" ) . "</p>";
 
1473
 
1474
  if ( $wp_cache_preload_on )
1475
  echo "<p>" . __( 'Warning! <strong>PRELOAD MODE</strong> activated. Supercache files will not be deleted regardless of age.' ) . "</p>";
@@ -1495,16 +1550,16 @@ function wp_cache_edit_max_time () {
1495
  echo '<tr><td valign="top"><strong>' . __( 'Scheduler', 'wp-super-cache' ) . '</strong></td><td><table cellpadding=0 cellspacing=0><tr><td valign="top"><input type="radio" id="schedule_interval" name="cache_schedule_type" value="interval" ' . checked( 'interval', $cache_schedule_type, false ) . ' /></td><td valign="top"><label for="cache_interval_time">' . __( 'Timer:', 'wp-super-cache' ) . '</label></td>';
1496
  echo "<td><input type='text' id='cache_interval_time' size=6 name='cache_time_interval' value='$cache_time_interval' /> " . __( "seconds", 'wp-super-cache' ) . '<br />' . __( 'Check for stale cached files every <em>interval</em> seconds.', 'wp-super-cache' ) . "</td></tr>";
1497
  echo '<tr><td valign="top"><input type="radio" id="schedule_time" name="cache_schedule_type" value="time" ' . checked( 'time', $cache_schedule_type, false ) . ' /></td><td valign="top"><label for="schedule_time">' . __( 'Clock:', 'wp-super-cache' ) . '</label></td>';
1498
- echo "<td><input type=\"text\" size=5 id='cache_scheduled_time' name='cache_scheduled_time' value=\"$cache_scheduled_time\" /> " . __( "HH:MM", 'wp-super-cache' ) . "<br />" . __( 'Check for stale cached files at this time or starting at this time every <em>interval</em> below.', 'wp-super-cache' ) . "</td></tr>";
1499
  $schedules = wp_get_schedules();
1500
  echo "<tr><td><br /></td><td><label for='cache_scheduled_select'>" . __( 'Interval:', 'wp-super-cache' ) . "</label></td><td><select id='cache_scheduled_select' name='cache_schedule_interval' size=1>";
1501
  foreach( $schedules as $desc => $details ) {
1502
- echo "<option name='$desc' " . selected( $desc, $cache_schedule_interval, false ) . " /> $desc</option>";
1503
  }
1504
  echo "</select></td></tr>";
1505
  echo '</table></td></tr>';
1506
  echo '<tr><td><label for="cache_gc_email_me"><strong>' . __( 'Notification Emails', 'wp-super-cache' ) . '</strong></label></td>';
1507
- echo "<td><input type='checkbox' id='cache_gc_email_me' name='cache_gc_email_me' " . checked( $cache_gc_email_me, 1, false ) . " /> </td></tr>\n";
1508
  echo "</table>\n";
1509
  echo "<h4>" . __( 'Garbage Collection', 'wp-super-cache' ) . "</h4>";
1510
  echo "<ol><li>" . __( '<em>Garbage collection</em> is the simple act of throwing out your garbage. For this plugin that would be old or <em>stale</em> cached files that may be out of date. New cached files are described as <em>fresh</em>.', 'wp-super-cache' ) . "</li>\n";
@@ -1663,11 +1718,9 @@ function wp_cache_edit_accepted() {
1663
  }
1664
 
1665
  function wp_cache_debug_settings() {
1666
- global $wp_super_cache_debug, $wp_cache_debug_log, $wp_cache_debug_level, $wp_cache_debug_ip, $cache_path, $valid_nonce, $wp_cache_config_file;
1667
  global $wp_super_cache_front_page_check, $wp_super_cache_front_page_clear, $wp_super_cache_front_page_text, $wp_super_cache_front_page_notification, $wp_super_cache_advanced_debug;
1668
 
1669
- if ( !isset( $wp_cache_debug_level ) )
1670
- $wp_cache_debug_level = 1;
1671
  if ( isset( $_POST[ 'wp_cache_debug' ] ) && $valid_nonce ) {
1672
  $wp_super_cache_debug = intval( $_POST[ 'wp_super_cache_debug' ] );
1673
  wp_cache_replace_line('^ *\$wp_super_cache_debug', "\$wp_super_cache_debug = '$wp_super_cache_debug';", $wp_cache_config_file);
@@ -1679,8 +1732,6 @@ function wp_cache_debug_settings() {
1679
  wp_cache_replace_line('^ *\$wp_cache_debug_log', "\$wp_cache_debug_log = '$wp_cache_debug_log';", $wp_cache_config_file);
1680
  $wp_cache_debug_ip = esc_html( $_POST[ 'wp_cache_debug_ip' ] );
1681
  wp_cache_replace_line('^ *\$wp_cache_debug_ip', "\$wp_cache_debug_ip = '$wp_cache_debug_ip';", $wp_cache_config_file);
1682
- $wp_cache_debug_level = (int)$_POST[ 'wp_cache_debug_level' ];
1683
- wp_cache_replace_line('^ *\$wp_cache_debug_level', "\$wp_cache_debug_level = '$wp_cache_debug_level';", $wp_cache_config_file);
1684
  $wp_super_cache_front_page_check = (int)$_POST[ 'wp_super_cache_front_page_check' ];
1685
  wp_cache_replace_line('^ *\$wp_super_cache_front_page_check', "\$wp_super_cache_front_page_check = '$wp_super_cache_front_page_check';", $wp_cache_config_file);
1686
  $wp_super_cache_front_page_clear = (int)$_POST[ 'wp_super_cache_front_page_clear' ];
@@ -1707,13 +1758,6 @@ function wp_cache_debug_settings() {
1707
  echo "<table class='form-table'>";
1708
  echo "<tr><td>" . __( 'Debugging', 'wp-super-cache' ) . "</td><td><input type='checkbox' name='wp_super_cache_debug' value='1' " . checked( 1, $wp_super_cache_debug, false ) . " /> " . __( 'enabled', 'wp-super-cache' ) . "</td></tr>";
1709
  echo "<tr><td>" . __( 'IP Address', 'wp-super-cache' ) . "</td><td> <input type='text' size='20' name='wp_cache_debug_ip' value='{$wp_cache_debug_ip}' /> " . sprintf( __( '(only log requests from this IP address. Your IP is %s)', 'wp-super-cache' ), $_SERVER[ 'REMOTE_ADDR' ] ) . "</td></tr>";
1710
- echo "<tr><td>" . __( 'Log level', 'wp-super-cache' ) . "</td><td> ";
1711
- for( $t = 1; $t <= 5; $t++ ) {
1712
- echo "<input type='radio' name='wp_cache_debug_level' value='$t' ";
1713
- echo $wp_cache_debug_level == $t ? "checked='checked' " : '';
1714
- echo "/> $t ";
1715
- }
1716
- echo " " . __( '(1 = less, 5 = more, may cause severe server load.)', 'wp-super-cache' ) . "</td></tr>";
1717
  echo "</table>\n";
1718
  if ( isset( $wp_super_cache_advanced_debug ) ) {
1719
  echo "<h4>" . __( 'Advanced', 'wp-super-cache' ) . "</h4><p>" . __( 'In very rare cases two problems may arise on some blogs:<ol><li> The front page may start downloading as a zip file.</li><li> The wrong page is occasionally cached as the front page if your blog uses a static front page and the permalink structure is <em>/%category%/%postname%/</em>.</li></ol>', 'wp-super-cache' ) . '</p>';
@@ -1906,7 +1950,7 @@ function wp_cache_verify_config_file() {
1906
  $new = true;
1907
  }
1908
  if( $sem_id == 5419 && $cache_path != '' ) {
1909
- $sem_id = crc32( $_SERVER[ 'HTTP_HOST' ] . $cache_path ) & 0x7fffffff;
1910
  wp_cache_replace_line('sem_id', '$sem_id = ' . $sem_id . ';', $wp_cache_config_file);
1911
  }
1912
  require($wp_cache_config_file);
@@ -1984,7 +2028,7 @@ function wp_cache_check_global_config() {
1984
  }
1985
  return false;
1986
  } else {
1987
- echo "<div style='border: 1px solid #333; background: #ffffaa; padding: 2px;'>" . __( '<h3>WP_CACHE constant added to wp-config.php</h3><p>If you continue to see this warning message please see point 5 of the <a href="http://wordpress.org/extend/plugins/wp-super-cache/faq/">FAQ</a>. The WP_CACHE line must be moved up.', 'wp-super-cache' ) . "</p></div>";
1988
  }
1989
  return true;
1990
  }
@@ -2220,18 +2264,11 @@ function wp_cache_files() {
2220
  }
2221
  echo "</div>";
2222
  echo "<p><a href='?page=wpsupercache&tab=contents#top'>" . __( 'Hide file list', 'wp-super-cache' ) . "</a></p>";
2223
- } elseif ( $cache_stats[ 'supercache' ][ 'cached' ] > 300 || $cache_stats[ 'supercache' ][ 'expired' ] > 300 || ( $cache_stats[ 'wpcache' ][ 'cached' ] / $divisor ) > 300 || ( $cache_stats[ 'wpcache' ][ 'expired' ] / $divisor) > 300 ) {
2224
  echo "<p><em>" . __( 'Too many cached files, no listing possible.', 'wp-super-cache' ) . "</em></p>";
2225
  } else {
2226
  echo "<p><a href='" . wp_nonce_url( add_query_arg( array( 'page' => 'wpsupercache', 'listfiles' => '1' ) ), 'wp-cache' ) . "#listfiles'>" . __( 'List all cached files', 'wp-super-cache' ) . "</a></p>";
2227
  }
2228
- $last_gc = get_option( "wpsupercache_gc_time" );
2229
- if ( $cache_max_time > 0 && $last_gc ) {
2230
- $next_gc = $cache_max_time < 1800 ? $cache_max_time : 600;
2231
- $next_gc_mins = ( time() - $last_gc );
2232
- echo "<p>" . sprintf( __( '<strong>Garbage Collection</strong><br />Last GC was <strong>%s</strong> minutes ago<br />', 'wp-super-cache' ), date( 'i:s', $next_gc_mins ) );
2233
- printf( __( "Next GC in <strong>%s</strong> minutes", 'wp-super-cache' ), date( 'i:s', $next_gc - $next_gc_mins ) ) . "</p>";
2234
- }
2235
  if ( $cache_max_time > 0 )
2236
  echo "<p>" . sprintf( __( 'Expired files are files older than %s seconds. They are still used by the plugin and are deleted periodically.', 'wp-super-cache' ), $cache_max_time ) . "</p>";
2237
  } // cache_stats
@@ -2253,7 +2290,7 @@ function wp_cache_delete_buttons() {
2253
  echo '<div class="submit" style="float:left;margin-left:10px"><input id="deletepost" type="submit" ' . SUBMITDISABLED . 'value="' . __( 'Delete Cache', 'wp-super-cache' ) . ' &raquo;" /></div>';
2254
  wp_nonce_field('wp-cache');
2255
  echo "</form>\n";
2256
- if ( defined( 'WP_ALLOW_MULTISITE' ) && wpsupercache_site_admin() ) {
2257
  echo '<form name="wp_cache_content_delete" action="#listfiles" method="post">';
2258
  echo '<input type="hidden" name="wp_delete_all_cache" />';
2259
  echo '<div class="submit" style="float:left;margin-left:10px"><input id="deleteallpost" type="submit" ' . SUBMITDISABLED . 'value="' . __( 'Delete Cache On All Blogs', 'wp-super-cache' ) . ' &raquo;" />';
@@ -2327,14 +2364,21 @@ function wp_cache_clean_cache( $file_prefix, $all = false ) {
2327
  $_POST[ 'super_cache_stats' ] = 1; // regenerate super cache stats;
2328
  } elseif ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Warning! prune_super_cache() not found in wp-cache.php', 1 );
2329
 
2330
- if ( $handle = @opendir( $blog_cache_dir . 'meta/' ) ) {
 
 
 
 
 
 
 
2331
  while ( false !== ($file = readdir($handle))) {
2332
  if ( preg_match( "/^$file_prefix/", $file ) ) {
2333
- $meta = unserialize( file_get_contents( $blog_cache_dir . 'meta/' . $file ) );
2334
- if ( $meta[ 'blog_id' ] == $wpdb->blogid ) {
2335
- @unlink( $blog_cache_dir . 'meta/' . $file);
2336
- @unlink( $blog_cache_dir . str_replace( '.meta', '.html', $file ) );
2337
- }
2338
  }
2339
  }
2340
  closedir($handle);
@@ -2351,7 +2395,7 @@ function wp_cache_clean_expired($file_prefix) {
2351
  // If phase2 was compiled, use its function to avoid race-conditions
2352
  if(function_exists('wp_cache_phase2_clean_expired')) {
2353
  if ( $wp_cache_preload_on != 1 && function_exists ('prune_super_cache')) {
2354
- $dir = $cache_path . 'supercache/' . preg_replace('/:.*$/', '', $_SERVER["HTTP_HOST"]);
2355
  if( is_dir( $dir ) ) {
2356
  prune_super_cache( $dir );
2357
  } elseif( is_dir( $dir . '.disabled' ) ) {
@@ -2563,7 +2607,7 @@ function wpsc_update_htaccess_form( $short_form = true ) {
2563
  }
2564
 
2565
  function wpsc_get_htaccess_info() {
2566
- global $wp_cache_mobile_enabled, $wp_cache_mobile_prefixes, $wp_cache_mobile_browsers;
2567
  if ( isset( $_SERVER[ "PHP_DOCUMENT_ROOT" ] ) ) {
2568
  $document_root = $_SERVER[ "PHP_DOCUMENT_ROOT" ];
2569
  $apache_root = $_SERVER[ "PHP_DOCUMENT_ROOT" ];
@@ -2609,8 +2653,10 @@ function wpsc_get_htaccess_info() {
2609
  $condition_rules[] = "RewriteCond %{HTTP:X-Wap-Profile} !^[a-z0-9\\\"]+ [NC]";
2610
  $condition_rules[] = "RewriteCond %{HTTP:Profile} !^[a-z0-9\\\"]+ [NC]";
2611
  if ( $wp_cache_mobile_enabled ) {
2612
- $condition_rules[] = "RewriteCond %{HTTP_USER_AGENT} !^.*(" . addcslashes( implode( '|', $wp_cache_mobile_browsers ), ' ' ) . ").* [NC]";
2613
- $condition_rules[] = "RewriteCond %{HTTP_user_agent} !^(" . addcslashes( implode( '|', $wp_cache_mobile_prefixes ), ' ' ) . ").* [NC]";
 
 
2614
  }
2615
  $condition_rules = apply_filters( 'supercacherewriteconditions', $condition_rules );
2616
 
@@ -2618,27 +2664,32 @@ function wpsc_get_htaccess_info() {
2618
  $rules .= "RewriteEngine On\n";
2619
  $rules .= "RewriteBase $home_root\n"; // props Chris Messina
2620
  $rules .= "#If you serve pages from behind a proxy you may want to change 'RewriteCond %{HTTPS} on' to something more sensible\n";
 
 
 
 
 
2621
  $rules .= "CONDITION_RULES";
2622
  $rules .= "RewriteCond %{HTTP:Accept-Encoding} gzip\n";
2623
  $rules .= "RewriteCond %{HTTPS} on\n";
2624
- $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index-https.html.gz -f\n";
2625
- $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index-https.html.gz\" [L]\n\n";
2626
 
2627
  $rules .= "CONDITION_RULES";
2628
  $rules .= "RewriteCond %{HTTP:Accept-Encoding} gzip\n";
2629
  $rules .= "RewriteCond %{HTTPS} !on\n";
2630
- $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index.html.gz -f\n";
2631
- $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index.html.gz\" [L]\n\n";
2632
 
2633
  $rules .= "CONDITION_RULES";
2634
  $rules .= "RewriteCond %{HTTPS} on\n";
2635
- $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index-https.html -f\n";
2636
- $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index-https.html\" [L]\n\n";
2637
 
2638
  $rules .= "CONDITION_RULES";
2639
  $rules .= "RewriteCond %{HTTPS} !on\n";
2640
- $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index.html -f\n";
2641
- $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{HTTP_HOST}{$home_root_lc}$1/index.html\" [L]\n";
2642
  $rules .= "</IfModule>\n";
2643
  $rules = apply_filters( 'supercacherewriterules', $rules );
2644
 
@@ -2659,22 +2710,29 @@ function clear_post_supercache( $post_id ) {
2659
  if ( !function_exists( 'prune_super_cache' ) )
2660
  include_once( 'wp-cache-phase2.php' );
2661
 
2662
- prune_super_cache( $dir, true);
 
 
 
 
2663
  }
2664
 
2665
  function wp_cron_preload_cache() {
2666
- global $wpdb, $wp_cache_preload_interval, $wp_cache_preload_posts, $wp_cache_preload_email_me, $wp_cache_preload_email_volume, $cache_path;
2667
 
2668
  if ( get_option( 'preload_cache_stop' ) ) {
2669
  delete_option( 'preload_cache_stop' );
 
2670
  return true;
2671
  }
2672
  $mutex = $cache_path . "preload_mutex.tmp";
2673
  sleep( 3 + mt_rand( 1, 5 ) );
2674
  if ( @file_exists( $mutex ) ) {
2675
  if ( @filemtime( $mutex ) > ( time() - 600 ) ) {
 
2676
  return true;
2677
  } else {
 
2678
  @unlink( $mutex );
2679
  }
2680
  }
@@ -2683,74 +2741,90 @@ function wp_cron_preload_cache() {
2683
 
2684
  $counter = get_option( 'preload_cache_counter' );
2685
  if ( is_array( $counter ) == false ) {
 
2686
  $counter = array( 'c' => 0, 't' => time() );
2687
  update_option( 'preload_cache_counter', $counter );
2688
  }
2689
  $c = $counter[ 'c' ];
2690
 
 
 
2691
  if ( $wp_cache_preload_email_me && $c == 0 )
2692
  wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] Cache Preload Started', 'wp-super-cache' ), site_url(), '' ), ' ' );
2693
 
2694
- $taxonomies = apply_filters( 'wp_cache_preload_taxonomies', array( 'post_tag' => 'tag', 'category' => 'category' ) );
2695
- $finished = false;
2696
- $permalink_counter_msg = $cache_path . "preload_permalink.txt";
2697
- foreach( $taxonomies as $taxonomy => $path ) {
2698
- $taxonomy_filename = $cache_path . "taxonomy_" . $taxonomy . ".txt";
2699
- if ( $c == 0 )
2700
- @unlink( $taxonomy_filename );
2701
-
2702
- if ( false == @file_exists( $taxonomy_filename ) ) {
2703
- $out = '';
2704
- $records = get_terms( $taxonomy );
2705
- foreach( $records as $term ) {
2706
- $out .= site_url( $path . "/" . $term->slug . "/" ) . "\n";
2707
- }
2708
- $fp = fopen( $taxonomy_filename, 'w' );
2709
- if ( $fp ) {
2710
- fwrite( $fp, $out );
2711
- fclose( $fp );
2712
- }
2713
- $details = explode( "\n", $out );
2714
- } else {
2715
- $details = explode( "\n", file_get_contents( $taxonomy_filename ) );
2716
- }
2717
- if ( count( $details ) != 1 && $details[ 0 ] != '' ) {
2718
- $rows = array_splice( $details, 0, 50 );
2719
- if ( $wp_cache_preload_email_me && $wp_cache_preload_email_volume == 'many' )
2720
- wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] Refreshing %2$s taxonomy from %3$d to %4$d', 'wp-super-cache' ), site_url(), $taxonomy, $c, ($c+100) ), 'Refreshing: ' . print_r( $rows, 1 ) );
2721
- foreach( (array)$rows as $url ) {
2722
- set_time_limit( 60 );
2723
- if ( $url == '' )
2724
- continue;
2725
- $url_info = parse_url( $url );
2726
- $dir = get_supercache_dir() . $url_info[ 'path' ];
2727
- prune_super_cache( $dir );
2728
- $fp = @fopen( $permalink_counter_msg, 'w' );
2729
- if ( $fp ) {
2730
- @fwrite( $fp, "$taxonomy: $url" );
2731
- @fclose( $fp );
 
 
 
 
 
 
 
 
 
 
 
 
 
2732
  }
2733
- wp_remote_get( $url, array('timeout' => 60, 'blocking' => true ) );
2734
- sleep( 1 );
2735
- }
2736
- $fp = fopen( $taxonomy_filename, 'w' );
2737
- if ( $fp ) {
2738
- fwrite( $fp, implode( "\n", $details ) );
2739
- fclose( $fp );
2740
  }
2741
  }
2742
  }
2743
 
2744
- if ( $wp_cache_preload_posts == 'all' || $c <= $wp_cache_preload_posts ) {
2745
- $posts = $wpdb->get_col( "SELECT ID FROM {$wpdb->posts} WHERE ( post_type != 'revision' AND post_type != 'nav_menu_item' ) AND post_status = 'publish' ORDER BY post_date DESC LIMIT $c, 100" );
 
2746
  } else {
 
2747
  $posts = false;
2748
  }
2749
  if ( !isset( $wp_cache_preload_email_volume ) )
2750
  $wp_cache_preload_email_volume = 'medium';
2751
 
2752
- update_option( 'preload_cache_counter', array( 'c' => ( $c + 100 ), 't' => time() ) );
2753
  if ( $posts ) {
 
 
 
 
 
 
2754
  if ( $wp_cache_preload_email_me && $wp_cache_preload_email_volume == 'many' )
2755
  wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] Refreshing posts from %2$d to %3$d', 'wp-super-cache' ), site_url(), $c, ($c+100) ), ' ' );
2756
  $msg = '';
@@ -2758,6 +2832,8 @@ function wp_cron_preload_cache() {
2758
  $permalink_counter_msg = $cache_path . "preload_permalink.txt";
2759
  foreach( $posts as $post_id ) {
2760
  set_time_limit( 60 );
 
 
2761
  clear_post_supercache( $post_id );
2762
  $url = get_permalink( $post_id );
2763
  $fp = @fopen( $permalink_counter_msg, 'w' );
@@ -2766,6 +2842,7 @@ function wp_cron_preload_cache() {
2766
  @fclose( $fp );
2767
  }
2768
  if ( @file_exists( $cache_path . "stop_preload.txt" ) ) {
 
2769
  @unlink( $mutex );
2770
  @unlink( $cache_path . "stop_preload.txt" );
2771
  update_option( 'preload_cache_counter', array( 'c' => 0, 't' => time() ) );
@@ -2775,12 +2852,14 @@ function wp_cron_preload_cache() {
2775
  }
2776
  $msg .= "$url\n";
2777
  wp_remote_get( $url, array('timeout' => 60, 'blocking' => true ) );
 
2778
  sleep( 1 );
2779
  $count++;
2780
  }
2781
  if ( $wp_cache_preload_email_me && $wp_cache_preload_email_volume != 'less' )
2782
- wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] %2$d posts refreshed', 'wp-super-cache' ), $_SERVER[ 'HTTP_HOST' ], ($c+100) ), __( "Refreshed the following posts:", 'wp-super-cache' ) . "\n$msg" );
2783
  if ( defined( 'DOING_CRON' ) ) {
 
2784
  wp_schedule_single_event( time() + 30, 'wp_cache_preload_hook' );
2785
  }
2786
  } else {
@@ -2789,6 +2868,7 @@ function wp_cron_preload_cache() {
2789
  if ( (int)$wp_cache_preload_interval && defined( 'DOING_CRON' ) ) {
2790
  if ( $wp_cache_preload_email_me )
2791
  $msg = sprintf( __( 'Scheduling next preload refresh in %d minutes.', 'wp-super-cache' ), (int)$wp_cache_preload_interval );
 
2792
  wp_schedule_single_event( time() + ( (int)$wp_cache_preload_interval * 60 ), 'wp_cache_full_preload_hook' );
2793
  }
2794
  global $file_prefix, $cache_max_time;
@@ -2799,6 +2879,7 @@ function wp_cron_preload_cache() {
2799
  }
2800
  if ( $wp_cache_preload_email_me )
2801
  wp_mail( get_option( 'admin_email' ), sprintf( __( '[%s] Cache Preload Completed', 'wp-super-cache' ), site_url() ), __( "Cleaning up old supercache files.", 'wp-super-cache' ) . "\n" . $msg );
 
2802
  wp_cache_phase2_clean_expired( $file_prefix, true ); // force cleanup of old files.
2803
  }
2804
  @unlink( $mutex );
@@ -2910,7 +2991,7 @@ function uninstall_supercache( $folderPath ) { // from http://www.php.net/manual
2910
 
2911
  function supercache_admin_bar_render() {
2912
  global $wp_admin_bar, $wp_cache_not_logged_in;
2913
- if ( !is_user_logged_in() && !$wp_cache_not_logged_in )
2914
  return false;
2915
 
2916
  if ( !wpsupercache_site_admin() )
@@ -2920,6 +3001,7 @@ function supercache_admin_bar_render() {
2920
  'parent' => '',
2921
  'id' => 'delete-cache',
2922
  'title' => __( 'Delete Cache', 'wp-super-cache' ),
 
2923
  'href' => wp_nonce_url( admin_url( 'options-general.php?page=wpsupercache&action=delete&path=' . urlencode( $_SERVER[ 'REQUEST_URI' ] ) ), 'delete-cache' )
2924
  ) );
2925
  }
3
  Plugin Name: WP Super Cache
4
  Plugin URI: http://ocaoimh.ie/wp-super-cache/
5
  Description: Very fast caching plugin for WordPress.
6
+ Version: 1.1
7
  Author: Donncha O Caoimh
8
  Author URI: http://ocaoimh.ie/
9
  */
10
 
11
  /* Copyright 2005-2006 Ricardo Galli Granada (email : gallir@uib.es)
12
+ Copyright 2007-2012 Donncha O Caoimh (http://ocaoimh.ie/) and many others.
13
 
14
  This program is free software; you can redistribute it and/or modify
15
  it under the terms of the GNU General Public License as published by
158
  if ( !wpsupercache_site_admin() )
159
  return false;
160
 
161
+ if ( version_compare( PHP_VERSION, '5.3.0', '<' ) && ( 1 == ini_get( 'safe_mode' ) || "on" == strtolower( ini_get( 'safe_mode' ) ) ) ) {
162
  echo '<div id="message" class="updated fade"><h3>' . __( 'Warning! PHP Safe Mode Enabled!', 'wp-super-cache' ) . '</h3><p>' .
163
  __( 'You may experience problems running this plugin because SAFE MODE is enabled.', 'wp-super-cache' ) . ' ';
164
 
235
  }
236
 
237
  if( !is_writeable_ACLSafe( $wp_cache_config_file ) ) {
238
+ if ( !defined( 'SUBMITDISABLED' ) )
239
+ define( "SUBMITDISABLED", 'disabled style="color: #aaa" ' );
240
  ?><div id="message" class="updated fade"><h3><?php _e( 'Read Only Mode. Configuration cannot be changed.', 'wp-super-cache' ); ?></h3>
241
  <p><?php printf( __( 'The WP Super Cache configuration file is <code>%s/wp-cache-config.php</code> and cannot be modified. That file must be writeable by the webserver to make any changes.', 'wp-super-cache' ), WP_CONTENT_DIR ); ?>
242
  <?php _e( 'A simple way of doing that is by changing the permissions temporarily using the CHMOD command or through your ftp client. Make sure it&#8217;s globally writeable and it should be fine.', 'wp-super-cache' ); ?></p>
244
  <?php _e( 'Writeable:', 'wp-super-cache' ); ?> <code>chmod 666 <?php echo WP_CONTENT_DIR; ?>/wp-cache-config.php</code>
245
  <?php _e( 'Readonly:', 'wp-super-cache' ); ?> <code>chmod 644 <?php echo WP_CONTENT_DIR; ?>/wp-cache-config.php</code></p>
246
  </div><?php
247
+ } elseif ( !defined( 'SUBMITDISABLED' ) ) {
248
  define( "SUBMITDISABLED", ' ' );
249
  }
250
 
268
  echo '<div id="message" class="updated fade"><h3>' . __( 'Mobile rewrite rules detected', 'wp-super-cache' ) . "</h3>";
269
  echo "<p>" . __( 'For best performance you should enable "Mobile device support" or delete the mobile rewrite rules in your .htaccess. Look for the 2 lines with the text "2.0\ MMP|240x320" and delete those.', 'wp-super-cache' ) . "</p><p>" . __( 'This will have no affect on ordinary users but mobile users will see uncached pages.', 'wp-super-cache' ) . "</p></div>";
270
  } elseif ( $wp_cache_mod_rewrite && $cache_enabled && $wp_cache_mobile_enabled && $scrules != '' && (
271
+ ( false == empty( $wp_cache_mobile_prefixes ) && false === strpos( $scrules, addcslashes( implode( '|', $wp_cache_mobile_prefixes ), ' ' ) ) ) ||
272
+ ( false == empty( $wp_cache_mobile_browsers ) && false === strpos( $scrules, addcslashes( implode( '|', $wp_cache_mobile_browsers ), ' ' ) ) ) )
273
  ) {
274
  ?>
275
  <div id="message" class="updated fade"><h3><?php _e( 'Rewrite rules must be updated', 'wp-super-cache' ); ?></h3>
315
  add_filter( 'wp_super_cache_error_checking', 'wp_cache_manager_error_checks' );
316
 
317
  function wp_cache_manager_updates() {
318
+ global $wp_cache_mobile_enabled, $wp_supercache_cache_list, $wp_cache_config_file, $wp_cache_hello_world, $wp_cache_clear_on_post_edit, $cache_rebuild_files, $wp_cache_mutex_disabled, $wp_cache_not_logged_in, $wp_cache_make_known_anon, $cache_path, $wp_cache_object_cache, $_wp_using_ext_object_cache, $wp_cache_refresh_single_only, $cache_compression, $wp_cache_mod_rewrite, $wp_supercache_304, $wp_super_cache_late_init, $wp_cache_front_page_checks, $cache_page_secret, $wp_cache_disable_utf8, $wp_cache_no_cache_for_get;
319
 
320
  if ( !wpsupercache_site_admin() )
321
  return false;
363
  }
364
  wp_cache_replace_line('^ *\$wp_super_cache_late_init', "\$wp_super_cache_late_init = " . $wp_super_cache_late_init . ";", $wp_cache_config_file);
365
 
366
+ if( isset( $_POST[ 'wp_cache_disable_utf8' ] ) ) {
367
+ $wp_cache_disable_utf8 = 1;
368
+ } else {
369
+ $wp_cache_disable_utf8 = 0;
370
+ }
371
+ wp_cache_replace_line('^ *\$wp_cache_disable_utf8', "\$wp_cache_disable_utf8 = " . $wp_cache_disable_utf8 . ";", $wp_cache_config_file);
372
+
373
+ if( isset( $_POST[ 'wp_cache_no_cache_for_get' ] ) ) {
374
+ $wp_cache_no_cache_for_get = 1;
375
+ } else {
376
+ $wp_cache_no_cache_for_get = 0;
377
+ }
378
+ wp_cache_replace_line('^ *\$wp_cache_no_cache_for_get', "\$wp_cache_no_cache_for_get = " . $wp_cache_no_cache_for_get . ";", $wp_cache_config_file);
379
+
380
  if( isset( $_POST[ 'wp_supercache_304' ] ) ) {
381
  $wp_supercache_304 = 1;
382
  } else {
514
 
515
  function wp_cache_manager() {
516
  global $wp_cache_config_file, $valid_nonce, $supercachedir, $cache_path, $cache_enabled, $cache_compression, $super_cache_enabled, $wp_cache_hello_world;
517
+ global $wp_cache_clear_on_post_edit, $cache_rebuild_files, $wp_cache_mutex_disabled, $wp_cache_mobile_enabled, $wp_cache_mobile_browsers, $wp_cache_no_cache_for_get;
518
  global $wp_cache_cron_check, $wp_cache_debug, $wp_cache_not_logged_in, $wp_cache_make_known_anon, $wp_supercache_cache_list, $cache_page_secret, $cache_home_path;
519
  global $wp_super_cache_front_page_check, $wp_cache_object_cache, $_wp_using_ext_object_cache, $wp_cache_refresh_single_only, $wp_cache_mobile_prefixes;
520
+ global $wpmu_version, $cache_max_time, $wp_cache_mod_rewrite, $wp_supercache_304, $wp_super_cache_late_init, $wp_cache_front_page_checks, $wp_cache_disable_utf8;
521
 
522
  if ( !wpsupercache_site_admin() )
523
  return false;
538
  }
539
  $wp_cache_mobile_browsers = apply_filters( 'cached_mobile_browsers', $wp_cache_mobile_browsers ); // Allow mobile plugins access to modify the mobile UA list
540
  $wp_cache_mobile_prefixes = apply_filters( 'cached_mobile_prefixes', $wp_cache_mobile_prefixes ); // Allow mobile plugins access to modify the mobile UA prefix list
541
+ if ( function_exists( 'do_cacheaction' ) ) {
542
+ $wp_cache_mobile_browsers = do_cacheaction( 'wp_super_cache_mobile_browsers', $wp_cache_mobile_browsers );
543
+ $wp_cache_mobile_prefixes = do_cacheaction( 'wp_super_cache_mobile_prefixes', $wp_cache_mobile_prefixes );
544
+ }
545
  $mobile_groups = apply_filters( 'cached_mobile_groups', array() ); // Group mobile user agents by capabilities. Lump them all together by default
546
  // mobile_groups = array( 'apple' => array( 'ipod', 'iphone' ), 'nokia' => array( 'nokia5800', 'symbianos' ) );
547
 
548
  if ( false == apply_filters( 'wp_super_cache_error_checking', true ) )
549
  return false;
550
 
551
+ if ( function_exists( 'get_supercache_dir' ) )
552
+ $supercachedir = get_supercache_dir();
553
  if( get_option( 'gzipcompression' ) == 1 )
554
  update_option( 'gzipcompression', 0 );
555
  if( !isset( $cache_rebuild_files ) )
623
  wp_cache_replace_line('^ *\$wp_cache_slash_check', "\$wp_cache_slash_check = 0;", $wp_cache_config_file);
624
  }
625
  $home_path = parse_url( site_url() );
626
+ $home_path = trailingslashit( array_key_exists( 'path', $home_path ) ? $home_path[ 'path' ] : '' );
627
+ if (! isset( $wp_cache_home_path ) )
628
+ $wp_cache_home_path = '/';
629
  if ( "$home_path" != "$wp_cache_home_path" )
630
  wp_cache_replace_line('^ *\$wp_cache_home_path', "\$wp_cache_home_path = '$home_path';", $wp_cache_config_file);
631
 
649
  wp_die( __( 'Caching must be enabled to use this feature', 'wp-super-cache' ) );
650
  echo '<a name="preload"></a>';
651
  if ( $super_cache_enabled == true && false == defined( 'DISABLESUPERCACHEPRELOADING' ) ) {
652
+ global $wp_cache_preload_interval, $wp_cache_preload_on, $wp_cache_preload_taxonomies, $wp_cache_preload_email_me, $wp_cache_preload_email_volume, $wp_cache_preload_posts, $wpdb;
653
  $count = $wpdb->get_var( "SELECT count(*) FROM {$wpdb->posts} WHERE post_status = 'publish'" );
654
  if ( $count > 1000 ) {
655
  $min_refresh_interval = 720;
703
  $wp_cache_preload_email_volume = 'medium';
704
  }
705
  wp_cache_replace_line('^ *\$wp_cache_preload_email_volume', "\$wp_cache_preload_email_volume = '$wp_cache_preload_email_volume';", $wp_cache_config_file);
706
+ if ( isset( $_POST[ 'preload_taxonomies' ] ) ) {
707
+ $wp_cache_preload_taxonomies = 1;
708
+ } else {
709
+ $wp_cache_preload_taxonomies = 0;
710
+ }
711
+ wp_cache_replace_line('^ *\$wp_cache_preload_taxonomies', "\$wp_cache_preload_taxonomies = $wp_cache_preload_taxonomies;", $wp_cache_config_file);
712
  if ( isset( $_POST[ 'preload_on' ] ) ) {
713
  $wp_cache_preload_on = 1;
714
  } else {
768
  echo '<input type="checkbox" name="preload_on" value="1" ';
769
  echo $wp_cache_preload_on == 1 ? 'checked=1' : '';
770
  echo ' /> ' . __( 'Preload mode (garbage collection only on legacy cache files. Recommended.)', 'wp-super-cache' ) . '<br />';
771
+ echo '<input type="checkbox" name="preload_taxonomies" value="1" ';
772
+ echo $wp_cache_preload_taxonomies == 1 ? 'checked=1' : '';
773
+ echo ' /> ' . __( 'Preload tags, categories and other taxonomies.', 'wp-super-cache' ) . '<br />';
774
  echo '<input type="checkbox" name="preload_email_me" value="1" ';
775
  echo $wp_cache_preload_email_me == 1 ? 'checked=1' : '';
776
  echo ' /> ' . __( 'Send me status emails when files are refreshed.', 'wp-super-cache' ) . '<br />';
851
  <?php } else { ?>
852
  <label><input type='checkbox' name='cache_compression' <?php if( $cache_compression ) echo "checked"; ?> value='1'> <?php _e( 'Compress pages so they&#8217;re served more quickly to visitors.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
853
  <em><?php _e( 'Compression is disabled by default because some hosts have problems with compressed files. Switching it on and off clears the cache.', 'wp-super-cache' ); ?></em><br />
854
+ <?php }
855
+ }
856
+ $disable_304 = true;
857
+ if ( 0 == $wp_cache_mod_rewrite )
858
+ $disable_304 = false;
859
+ if ( $disable_304 )
860
+ echo "<strike>";
861
+ ?><label><input <?php if ( $disable_304 ) { echo "disabled"; } ?> type='checkbox' name='wp_supercache_304' <?php if( $wp_supercache_304 ) echo "checked"; ?> value='1'> <?php _e( '304 Not Modified browser caching. Indicate when a page has not been modified since last requested.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br /><?php
862
+ if ( $disable_304 ) {
863
+ echo "</strike>";
864
+ echo "<p><strong>" . __( 'Warning! 304 browser caching is only supported when not using mod_rewrite caching.', 'wp-super-cache' ) . "</strong></p>";
865
+ } else {
866
+ ?><em><?php _e( '304 support is disabled by default because in the past GoDaddy had problems with some of the headers used.', 'wp-super-cache' ); ?></em><br /><?php
867
+ }
868
+ ?><label><input type='checkbox' name='wp_cache_not_logged_in' <?php if( $wp_cache_not_logged_in ) echo "checked"; ?> value='1'> <?php _e( 'Don&#8217;t cache pages for <acronym title="Logged in users and those that comment">known users</acronym>.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
869
+ <label><input type='checkbox' name='wp_cache_no_cache_for_get' <?php if( $wp_cache_no_cache_for_get ) echo "checked"; ?> value='1'> <?php _e( 'Don&#8217;t cache pages with GET parameters. (?x=y at the end of a url)', 'wp-super-cache' ); ?></label><br />
870
  <label><input type='checkbox' name='wp_cache_make_known_anon' <?php if( $wp_cache_make_known_anon ) echo "checked"; ?> value='1'> <?php _e( 'Make known users anonymous so they&#8217;re served supercached static files.', 'wp-super-cache' ); ?></label><br />
871
  <label><input type='checkbox' name='cache_rebuild_files' <?php if( $cache_rebuild_files ) echo "checked"; ?> value='1'> <?php _e( 'Cache rebuild. Serve a supercache file to anonymous users while a new file is being generated.', 'wp-super-cache' ); echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?></label><br />
872
  <label><input type='checkbox' name='wp_cache_hello_world' <?php if( $wp_cache_hello_world ) echo "checked"; ?> value='1'> <?php printf( __( 'Proudly tell the world your server is <a href="%s">Stephen Fry proof</a>! (places a message in your blog&#8217;s footer)', 'wp-super-cache' ), 'https://twitter.com/#!/HibbsLupusTrust/statuses/136429993059291136' ); ?></label><br />
880
  <fieldset>
881
  <legend class="hidden">Advanced</legend>
882
  <label><input type='checkbox' name='wp_cache_mobile_enabled' <?php if( $wp_cache_mobile_enabled ) echo "checked"; ?> value='1'> <?php _e( 'Mobile device support. (External plugin or theme required. See the <a href="http://wordpress.org/extend/plugins/wp-super-cache/faq/">FAQ</a> for further details.)', 'wp-super-cache' ); ?></label><br />
883
+ <?php if ( $wp_cache_mobile_enabled ) {
884
+ echo '<blockquote><h4>' . __( 'Mobile Browsers', 'wp-super-cache' ) . '</h4>' . implode( ', ', $wp_cache_mobile_browsers ) . "<br /><h4>" . __( 'Mobile Prefixes', 'wp-super-cache' ) . "</h4>" . implode( ', ', $wp_cache_mobile_prefixes ) . "<br /></blockquote>";
885
+ } ?>
886
+ <label><input type='checkbox' name='wp_cache_disable_utf8' <?php if( $wp_cache_disable_utf8 ) echo "checked"; ?> value='1'> <?php _e( 'Remove UTF8/blog charset support from .htaccess file. Only necessary if you see odd characters or punctuation looks incorrect. Requires rewrite rules update.', 'wp-super-cache' ); ?></label><br />
887
  <label><input type='checkbox' name='wp_cache_clear_on_post_edit' <?php if( $wp_cache_clear_on_post_edit ) echo "checked"; ?> value='1'> <?php _e( 'Clear all cache files when a post or page is published or updated.', 'wp-super-cache' ); ?></label><br />
888
  <label><input type='checkbox' name='wp_cache_front_page_checks' <?php if( $wp_cache_front_page_checks ) echo "checked"; ?> value='1'> <?php _e( 'Extra homepage checks. (Very occasionally stops homepage caching)', 'wp-super-cache' ); ?></label><?php echo " <em>(" . __( "Recommended", "wp-super-cache" ) . ")</em>"; ?><br />
889
  <label><input type='checkbox' name='wp_cache_refresh_single_only' <?php if( $wp_cache_refresh_single_only ) echo "checked"; ?> value='1'> <?php _e( 'Only refresh current page when comments made.', 'wp-super-cache' ); ?></label><br />
1018
  }
1019
  }
1020
 
1021
+ if ( ( !is_wp_error( $page ) && !is_wp_error( $page2 ) ) && preg_match( '/(Cached page generated by WP-Super-Cache on) ([0-9]*-[0-9]*-[0-9]* [0-9]*:[0-9]*:[0-9]*)/', $page[ 'body' ], $matches1 ) &&
1022
  preg_match( '/(Cached page generated by WP-Super-Cache on) ([0-9]*-[0-9]*-[0-9]* [0-9]*:[0-9]*:[0-9]*)/', $page2[ 'body' ], $matches2 ) && $matches1[2] == $matches2[2] ) {
1023
  echo '<p>' . sprintf( __( 'Page 1: %s', 'wp-super-cache' ), $matches1[ 2 ] ) . '</p>';
1024
  echo '<p>' . sprintf( __( 'Page 2: %s', 'wp-super-cache' ), $matches2[ 2 ] ) . '</p>';
1049
  wp_nonce_field('wp-cache');
1050
  echo "</form>\n";
1051
 
1052
+ if ( ( defined( 'VHOST' ) || ( defined( 'WP_ALLOW_MULTISITE' ) && constant( 'WP_ALLOW_MULTISITE' ) == true ) ) && wpsupercache_site_admin() ) {
1053
  echo '<form name="wp_cache_content_delete" action="#listfiles" method="post">';
1054
  echo '<input type="hidden" name="wp_delete_all_cache" />';
1055
  echo '<div class="submit" style="float:left;margin-left:10px"><input id="deleteallpost" type="submit" ' . SUBMITDISABLED . 'value="' . __( 'Delete Cache On All Blogs', 'wp-super-cache' ) . ' &raquo;" />';
1059
  ?>
1060
  <h3><?php _e( 'Recommended Links and Plugins', 'wp-super-cache' ); ?></h3>
1061
  <p><?php _e( 'Caching is only one part of making a website faster. Here are some other plugins that will help:', 'wp-super-cache' ); ?></p>
1062
+ <ol><li><?php printf( __( '<a href="%s">WPSCMin</a>, a Supercache plugin that minifies cached pages by removing whitespaces and extra characters ', 'wp-super-cache' ), 'http://lyncd.com/wpscmin/' ); ?></li>
1063
  <li><?php printf( __( '<a href="%s">Yahoo! Yslow</a> is an extension for the Firefox add-on Firebug. It analyzes web pages and suggests ways to improve their performance based on a set of rules for high performance web pages. Also try the performance tools online at <a href="%s">GTMetrix</a>.', 'wp-super-cache' ), 'http://developer.yahoo.com/yslow/', 'http://gtmetrix.com/' ); ?></li>
1064
  <li><?php printf( __( '<a href="%s">Use Google Libraries</a> allows you to load some commonly used Javascript libraries from Google webservers. Ironically it may reduce your Yslow score.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/use-google-libraries/' ); ?></li>
1065
  <li><?php printf( __( 'The <a href="%1$s">CDN Sync Tool</a> plugin will help upload files to Amazon S3/Cloudfront if you would rather not depend on origin pull. See the <a href="%2$s">plugin support forum</a> if you have any queries about this plugin.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/cdn-sync-tool/', 'http://wordpress.org/tags/cdn-sync-tool?forum_id=10' ); ?></li>
1066
  <li><?php printf( __( '<strong>Advanced users only:</strong> <a href="%s">Speed up your site with Caching and cache-control</a> explains how to make your site more cacheable with .htaccess rules.', 'wp-super-cache' ), 'http://www.askapache.com/htaccess/speed-up-your-site-with-caching-and-cache-control.html' ); ?></li>
1067
  <li><?php printf( __( '<strong>Advanced users only:</strong> Install an object cache. Choose from <a href="%s">Memcached</a>, <a href="%s">XCache</a>, <a href="%s">eAcccelerator</a> and others.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/memcached/', 'http://neosmart.net/dl.php?id=12', 'http://neosmart.net/dl.php?id=13' ); ?></li>
1068
+ <li><?php printf( __( '<a href="%s">Cron View</a> is a useful plugin to use when trying to debug garbage collection and preload problems.', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/cron-view/' ); ?></li>
1069
  </ol>
1070
 
1071
  <?php
1082
  <p><?php printf( __( 'Please say hi to him on %s too!', 'wp-super-cache' ), '<a href="http://twitter.com/donncha/">Twitter</a>' ); ?></p>
1083
  <h3 align='center'><?php _e( 'Need Help?', 'wp-super-cache' ); ?></h3>
1084
  <ol>
1085
+ <li><?php _e( 'Use the debug system in the Debug tab above. It will tell you what the plugin is doing.', 'wp-super-cache' ); ?></li>
1086
  <li><?php printf( __( '<a href="%1$s">Installation Help</a>', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/wp-super-cache/installation/' ); ?></li>
1087
  <li><?php printf( __( '<a href="%1$s">Frequently Asked Questions</a>', 'wp-super-cache' ), 'http://wordpress.org/extend/plugins/wp-super-cache/faq/' ); ?></li>
1088
  <li><?php printf( __( '<a href="%1$s">Support Forum</a>', 'wp-super-cache' ), 'http://wordpress.org/tags/wp-super-cache' ); ?></li>
1454
  function wp_cache_edit_max_time () {
1455
  global $cache_max_time, $wp_cache_config_file, $valid_nonce, $cache_enabled, $super_cache_enabled, $cache_schedule_type, $cache_scheduled_time, $cache_schedule_interval, $cache_time_interval, $cache_gc_email_me, $wp_cache_preload_on;
1456
 
1457
+ $timezone_format = _x('Y-m-d G:i:s', 'timezone date format');
1458
 
1459
  if( !isset( $cache_schedule_type ) ) {
1460
  $cache_schedule_type = 'interval';
1497
  wp_schedule_single_event( time() + $cache_time_interval, 'wp_cache_gc' );
1498
  wp_cache_replace_line('^ *\$cache_schedule_type', "\$cache_schedule_type = '$cache_schedule_type';", $wp_cache_config_file);
1499
  wp_cache_replace_line('^ *\$cache_time_interval', "\$cache_time_interval = '$cache_time_interval';", $wp_cache_config_file);
1500
+ } elseif ( $valid_nonce ) { // clock
1501
  wp_clear_scheduled_hook( 'wp_cache_gc' );
1502
  $cache_schedule_type = 'time';
1503
  if ( $_POST[ 'cache_scheduled_time' ] == '' )
1504
  $_POST[ 'cache_scheduled_time' ] = '00:00';
1505
  $cache_scheduled_time = $_POST[ 'cache_scheduled_time' ];
1506
+ $schedules = wp_get_schedules();
1507
+ if ( isset( $schedules[ $_POST[ 'cache_schedule_interval' ] ] ) )
1508
+ $cache_schedule_interval = $_POST[ 'cache_schedule_interval' ];
1509
  wp_schedule_single_event( strtotime( $cache_scheduled_time ), 'wp_cache_gc' );
1510
  wp_cache_replace_line('^ *\$cache_schedule_type', "\$cache_schedule_type = '$cache_schedule_type';", $wp_cache_config_file);
1511
  wp_cache_replace_line('^ *\$cache_schedule_interval', "\$cache_schedule_interval = '{$cache_schedule_interval}';", $wp_cache_config_file);
1515
  ?><fieldset class="options">
1516
  <a name='expirytime'></a>
1517
  <h3><?php _e( 'Expiry Time &amp; Garbage Collection', 'wp-super-cache' ); ?></h3><?php
1518
+
1519
+ ?><span id="utc-time"><?php printf(__('<abbr title="Coordinated Universal Time">UTC</abbr> time is <code>%s</code>'), date_i18n($timezone_format, false, 'gmt')); ?></span><?php
1520
+ $current_offset = get_option('gmt_offset');
1521
+ if ( get_option('timezone_string') || !empty($current_offset) ) {
1522
+ ?><span id="local-time"><?php printf(__('Local time is <code>%1$s</code>'), date_i18n($timezone_format)); ?></span><?php
1523
+ }
1524
  $next_gc = wp_next_scheduled( 'wp_cache_gc' );
 
1525
  if ( $next_gc )
1526
+ echo "<p>" . sprintf( __( 'Next scheduled garbage collection will be at <strong>%s UTC</strong>', 'wp-super-cache' ), date_i18n( $timezone_format, $next_gc, 'gmt' ) ) . "</p>";
1527
+
1528
 
1529
  if ( $wp_cache_preload_on )
1530
  echo "<p>" . __( 'Warning! <strong>PRELOAD MODE</strong> activated. Supercache files will not be deleted regardless of age.' ) . "</p>";
1550
  echo '<tr><td valign="top"><strong>' . __( 'Scheduler', 'wp-super-cache' ) . '</strong></td><td><table cellpadding=0 cellspacing=0><tr><td valign="top"><input type="radio" id="schedule_interval" name="cache_schedule_type" value="interval" ' . checked( 'interval', $cache_schedule_type, false ) . ' /></td><td valign="top"><label for="cache_interval_time">' . __( 'Timer:', 'wp-super-cache' ) . '</label></td>';
1551
  echo "<td><input type='text' id='cache_interval_time' size=6 name='cache_time_interval' value='$cache_time_interval' /> " . __( "seconds", 'wp-super-cache' ) . '<br />' . __( 'Check for stale cached files every <em>interval</em> seconds.', 'wp-super-cache' ) . "</td></tr>";
1552
  echo '<tr><td valign="top"><input type="radio" id="schedule_time" name="cache_schedule_type" value="time" ' . checked( 'time', $cache_schedule_type, false ) . ' /></td><td valign="top"><label for="schedule_time">' . __( 'Clock:', 'wp-super-cache' ) . '</label></td>';
1553
+ echo "<td><input type=\"text\" size=5 id='cache_scheduled_time' name='cache_scheduled_time' value=\"$cache_scheduled_time\" /> " . __( "HH:MM", 'wp-super-cache' ) . "<br />" . __( 'Check for stale cached files at this time <strong>(UTC)</strong> or starting at this time every <em>interval</em> below.', 'wp-super-cache' ) . "</td></tr>";
1554
  $schedules = wp_get_schedules();
1555
  echo "<tr><td><br /></td><td><label for='cache_scheduled_select'>" . __( 'Interval:', 'wp-super-cache' ) . "</label></td><td><select id='cache_scheduled_select' name='cache_schedule_interval' size=1>";
1556
  foreach( $schedules as $desc => $details ) {
1557
+ echo "<option value='$desc' " . selected( $desc, $cache_schedule_interval, false ) . " /> {$details[ 'display' ]}</option>";
1558
  }
1559
  echo "</select></td></tr>";
1560
  echo '</table></td></tr>';
1561
  echo '<tr><td><label for="cache_gc_email_me"><strong>' . __( 'Notification Emails', 'wp-super-cache' ) . '</strong></label></td>';
1562
+ echo "<td><input type='checkbox' id='cache_gc_email_me' name='cache_gc_email_me' " . checked( $cache_gc_email_me, 1, false ) . " /> " . __( 'Email me when the garbage collection runs.', 'wp-super-cache' ) . "</td></tr>\n";
1563
  echo "</table>\n";
1564
  echo "<h4>" . __( 'Garbage Collection', 'wp-super-cache' ) . "</h4>";
1565
  echo "<ol><li>" . __( '<em>Garbage collection</em> is the simple act of throwing out your garbage. For this plugin that would be old or <em>stale</em> cached files that may be out of date. New cached files are described as <em>fresh</em>.', 'wp-super-cache' ) . "</li>\n";
1718
  }
1719
 
1720
  function wp_cache_debug_settings() {
1721
+ global $wp_super_cache_debug, $wp_cache_debug_log, $wp_cache_debug_ip, $cache_path, $valid_nonce, $wp_cache_config_file;
1722
  global $wp_super_cache_front_page_check, $wp_super_cache_front_page_clear, $wp_super_cache_front_page_text, $wp_super_cache_front_page_notification, $wp_super_cache_advanced_debug;
1723
 
 
 
1724
  if ( isset( $_POST[ 'wp_cache_debug' ] ) && $valid_nonce ) {
1725
  $wp_super_cache_debug = intval( $_POST[ 'wp_super_cache_debug' ] );
1726
  wp_cache_replace_line('^ *\$wp_super_cache_debug', "\$wp_super_cache_debug = '$wp_super_cache_debug';", $wp_cache_config_file);
1732
  wp_cache_replace_line('^ *\$wp_cache_debug_log', "\$wp_cache_debug_log = '$wp_cache_debug_log';", $wp_cache_config_file);
1733
  $wp_cache_debug_ip = esc_html( $_POST[ 'wp_cache_debug_ip' ] );
1734
  wp_cache_replace_line('^ *\$wp_cache_debug_ip', "\$wp_cache_debug_ip = '$wp_cache_debug_ip';", $wp_cache_config_file);
 
 
1735
  $wp_super_cache_front_page_check = (int)$_POST[ 'wp_super_cache_front_page_check' ];
1736
  wp_cache_replace_line('^ *\$wp_super_cache_front_page_check', "\$wp_super_cache_front_page_check = '$wp_super_cache_front_page_check';", $wp_cache_config_file);
1737
  $wp_super_cache_front_page_clear = (int)$_POST[ 'wp_super_cache_front_page_clear' ];
1758
  echo "<table class='form-table'>";
1759
  echo "<tr><td>" . __( 'Debugging', 'wp-super-cache' ) . "</td><td><input type='checkbox' name='wp_super_cache_debug' value='1' " . checked( 1, $wp_super_cache_debug, false ) . " /> " . __( 'enabled', 'wp-super-cache' ) . "</td></tr>";
1760
  echo "<tr><td>" . __( 'IP Address', 'wp-super-cache' ) . "</td><td> <input type='text' size='20' name='wp_cache_debug_ip' value='{$wp_cache_debug_ip}' /> " . sprintf( __( '(only log requests from this IP address. Your IP is %s)', 'wp-super-cache' ), $_SERVER[ 'REMOTE_ADDR' ] ) . "</td></tr>";
 
 
 
 
 
 
 
1761
  echo "</table>\n";
1762
  if ( isset( $wp_super_cache_advanced_debug ) ) {
1763
  echo "<h4>" . __( 'Advanced', 'wp-super-cache' ) . "</h4><p>" . __( 'In very rare cases two problems may arise on some blogs:<ol><li> The front page may start downloading as a zip file.</li><li> The wrong page is occasionally cached as the front page if your blog uses a static front page and the permalink structure is <em>/%category%/%postname%/</em>.</li></ol>', 'wp-super-cache' ) . '</p>';
1950
  $new = true;
1951
  }
1952
  if( $sem_id == 5419 && $cache_path != '' ) {
1953
+ $sem_id = crc32( $_SERVER[ 'SERVER_NAME' ] . $cache_path ) & 0x7fffffff;
1954
  wp_cache_replace_line('sem_id', '$sem_id = ' . $sem_id . ';', $wp_cache_config_file);
1955
  }
1956
  require($wp_cache_config_file);
2028
  }
2029
  return false;
2030
  } else {
2031
+ echo "<div style='border: 1px solid #333; background: #ffffaa; padding: 2px;'>" . __( '<h3>WP_CACHE constant added to wp-config.php</h3><p>If you continue to see this warning message please see point 5 of the <a href="http://wordpress.org/extend/plugins/wp-super-cache/faq/">Troubleshooting Guide</a>. The WP_CACHE line must be moved up.', 'wp-super-cache' ) . "</p></div>";
2032
  }
2033
  return true;
2034
  }
2264
  }
2265
  echo "</div>";
2266
  echo "<p><a href='?page=wpsupercache&tab=contents#top'>" . __( 'Hide file list', 'wp-super-cache' ) . "</a></p>";
2267
+ } elseif ( $cache_stats[ 'supercache' ][ 'cached' ] > 500 || $cache_stats[ 'supercache' ][ 'expired' ] > 500 || ( $cache_stats[ 'wpcache' ][ 'cached' ] / $divisor ) > 500 || ( $cache_stats[ 'wpcache' ][ 'expired' ] / $divisor) > 500 ) {
2268
  echo "<p><em>" . __( 'Too many cached files, no listing possible.', 'wp-super-cache' ) . "</em></p>";
2269
  } else {
2270
  echo "<p><a href='" . wp_nonce_url( add_query_arg( array( 'page' => 'wpsupercache', 'listfiles' => '1' ) ), 'wp-cache' ) . "#listfiles'>" . __( 'List all cached files', 'wp-super-cache' ) . "</a></p>";
2271
  }
 
 
 
 
 
 
 
2272
  if ( $cache_max_time > 0 )
2273
  echo "<p>" . sprintf( __( 'Expired files are files older than %s seconds. They are still used by the plugin and are deleted periodically.', 'wp-super-cache' ), $cache_max_time ) . "</p>";
2274
  } // cache_stats
2290
  echo '<div class="submit" style="float:left;margin-left:10px"><input id="deletepost" type="submit" ' . SUBMITDISABLED . 'value="' . __( 'Delete Cache', 'wp-super-cache' ) . ' &raquo;" /></div>';
2291
  wp_nonce_field('wp-cache');
2292
  echo "</form>\n";
2293
+ if ( ( defined( 'VHOST' ) || ( defined( 'WP_ALLOW_MULTISITE' ) && constant( 'WP_ALLOW_MULTISITE' ) == true ) ) && wpsupercache_site_admin() ) {
2294
  echo '<form name="wp_cache_content_delete" action="#listfiles" method="post">';
2295
  echo '<input type="hidden" name="wp_delete_all_cache" />';
2296
  echo '<div class="submit" style="float:left;margin-left:10px"><input id="deleteallpost" type="submit" ' . SUBMITDISABLED . 'value="' . __( 'Delete Cache On All Blogs', 'wp-super-cache' ) . ' &raquo;" />';
2364
  $_POST[ 'super_cache_stats' ] = 1; // regenerate super cache stats;
2365
  } elseif ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( 'Warning! prune_super_cache() not found in wp-cache.php', 1 );
2366
 
2367
+ wp_cache_clean_legacy_files( $blog_cache_dir, $file_prefix );
2368
+ wp_cache_clean_legacy_files( $cache_path, $file_prefix );
2369
+
2370
+ }
2371
+
2372
+ function wp_cache_clean_legacy_files( $dir, $file_prefix ) {
2373
+ global $wpdb;
2374
+ if ( $handle = @opendir( $dir . 'meta/' ) ) {
2375
  while ( false !== ($file = readdir($handle))) {
2376
  if ( preg_match( "/^$file_prefix/", $file ) ) {
2377
+ $meta = unserialize( file_get_contents( $dir . 'meta/' . $file ) );
2378
+ if ( ( defined( 'VHOST' ) || ( defined( 'WP_ALLOW_MULTISITE' ) && constant( 'WP_ALLOW_MULTISITE' ) == true ) ) && $meta[ 'blog_id' ] != $wpdb->blogid )
2379
+ continue;
2380
+ @unlink( $dir . 'meta/' . $file);
2381
+ @unlink( $dir . str_replace( '.meta', '.html', $file ) );
2382
  }
2383
  }
2384
  closedir($handle);
2395
  // If phase2 was compiled, use its function to avoid race-conditions
2396
  if(function_exists('wp_cache_phase2_clean_expired')) {
2397
  if ( $wp_cache_preload_on != 1 && function_exists ('prune_super_cache')) {
2398
+ $dir = get_supercache_dir();
2399
  if( is_dir( $dir ) ) {
2400
  prune_super_cache( $dir );
2401
  } elseif( is_dir( $dir . '.disabled' ) ) {
2607
  }
2608
 
2609
  function wpsc_get_htaccess_info() {
2610
+ global $wp_cache_mobile_enabled, $wp_cache_mobile_prefixes, $wp_cache_mobile_browsers, $wp_cache_disable_utf8;
2611
  if ( isset( $_SERVER[ "PHP_DOCUMENT_ROOT" ] ) ) {
2612
  $document_root = $_SERVER[ "PHP_DOCUMENT_ROOT" ];
2613
  $apache_root = $_SERVER[ "PHP_DOCUMENT_ROOT" ];
2653
  $condition_rules[] = "RewriteCond %{HTTP:X-Wap-Profile} !^[a-z0-9\\\"]+ [NC]";
2654
  $condition_rules[] = "RewriteCond %{HTTP:Profile} !^[a-z0-9\\\"]+ [NC]";
2655
  if ( $wp_cache_mobile_enabled ) {
2656
+ if ( false == empty( $wp_cache_mobile_browsers ) )
2657
+ $condition_rules[] = "RewriteCond %{HTTP_USER_AGENT} !^.*(" . addcslashes( implode( '|', $wp_cache_mobile_browsers ), ' ' ) . ").* [NC]";
2658
+ if ( false == empty( $wp_cache_mobile_prefixes ) )
2659
+ $condition_rules[] = "RewriteCond %{HTTP_user_agent} !^(" . addcslashes( implode( '|', $wp_cache_mobile_prefixes ), ' ' ) . ").* [NC]";
2660
  }
2661
  $condition_rules = apply_filters( 'supercacherewriteconditions', $condition_rules );
2662
 
2664
  $rules .= "RewriteEngine On\n";
2665
  $rules .= "RewriteBase $home_root\n"; // props Chris Messina
2666
  $rules .= "#If you serve pages from behind a proxy you may want to change 'RewriteCond %{HTTPS} on' to something more sensible\n";
2667
+ if ( isset( $wp_cache_disable_utf8 ) == false || $wp_cache_disable_utf8 == 0 ) {
2668
+ $charset = get_option('blog_charset') == '' ? 'UTF-8' : get_option('blog_charset');
2669
+ $rules .= "AddDefaultCharset {$charset}\n";
2670
+ }
2671
+
2672
  $rules .= "CONDITION_RULES";
2673
  $rules .= "RewriteCond %{HTTP:Accept-Encoding} gzip\n";
2674
  $rules .= "RewriteCond %{HTTPS} on\n";
2675
+ $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index-https.html.gz -f\n";
2676
+ $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index-https.html.gz\" [L]\n\n";
2677
 
2678
  $rules .= "CONDITION_RULES";
2679
  $rules .= "RewriteCond %{HTTP:Accept-Encoding} gzip\n";
2680
  $rules .= "RewriteCond %{HTTPS} !on\n";
2681
+ $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index.html.gz -f\n";
2682
+ $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index.html.gz\" [L]\n\n";
2683
 
2684
  $rules .= "CONDITION_RULES";
2685
  $rules .= "RewriteCond %{HTTPS} on\n";
2686
+ $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index-https.html -f\n";
2687
+ $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index-https.html\" [L]\n\n";
2688
 
2689
  $rules .= "CONDITION_RULES";
2690
  $rules .= "RewriteCond %{HTTPS} !on\n";
2691
+ $rules .= "RewriteCond {$apache_root}{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index.html -f\n";
2692
+ $rules .= "RewriteRule ^(.*) \"{$inst_root}cache/supercache/%{SERVER_NAME}{$home_root_lc}$1/index.html\" [L]\n";
2693
  $rules .= "</IfModule>\n";
2694
  $rules = apply_filters( 'supercacherewriterules', $rules );
2695
 
2710
  if ( !function_exists( 'prune_super_cache' ) )
2711
  include_once( 'wp-cache-phase2.php' );
2712
 
2713
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "clear_post_supercache: deleting $dir/index*.html files", 2 );
2714
+ $files_to_check = get_all_supercache_filenames( $dir );
2715
+ foreach( $files_to_check as $cache_file ) {
2716
+ prune_super_cache( $dir . $cache_file, true );
2717
+ }
2718
  }
2719
 
2720
  function wp_cron_preload_cache() {
2721
+ global $wpdb, $wp_cache_preload_interval, $wp_cache_preload_posts, $wp_cache_preload_email_me, $wp_cache_preload_email_volume, $cache_path, $wp_cache_preload_taxonomies;
2722
 
2723
  if ( get_option( 'preload_cache_stop' ) ) {
2724
  delete_option( 'preload_cache_stop' );
2725
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: preload cancelled", 1 );
2726
  return true;
2727
  }
2728
  $mutex = $cache_path . "preload_mutex.tmp";
2729
  sleep( 3 + mt_rand( 1, 5 ) );
2730
  if ( @file_exists( $mutex ) ) {
2731
  if ( @filemtime( $mutex ) > ( time() - 600 ) ) {
2732
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: preload mutex found and less than 600 seconds old. Aborting preload.", 1 );
2733
  return true;
2734
  } else {
2735
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: old preload mutex found and deleted. Preload continues.", 1 );
2736
  @unlink( $mutex );
2737
  }
2738
  }
2741
 
2742
  $counter = get_option( 'preload_cache_counter' );
2743
  if ( is_array( $counter ) == false ) {
2744
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: setting up preload for the first time!", 5 );
2745
  $counter = array( 'c' => 0, 't' => time() );
2746
  update_option( 'preload_cache_counter', $counter );
2747
  }
2748
  $c = $counter[ 'c' ];
2749
 
2750
+ update_option( 'preload_cache_counter', array( 'c' => ( $c + 100 ), 't' => time() ) );
2751
+
2752
  if ( $wp_cache_preload_email_me && $c == 0 )
2753
  wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] Cache Preload Started', 'wp-super-cache' ), site_url(), '' ), ' ' );
2754
 
2755
+ if ( $wp_cache_preload_posts == 'all' || $c < $wp_cache_preload_posts ) {
2756
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: doing taxonomy preload.", 5 );
2757
+ $permalink_counter_msg = $cache_path . "preload_permalink.txt";
2758
+ if ( isset( $wp_cache_preload_taxonomies ) && $wp_cache_preload_taxonomies ) {
2759
+ $taxonomies = apply_filters( 'wp_cache_preload_taxonomies', array( 'post_tag' => 'tag', 'category' => 'category' ) );
2760
+ foreach( $taxonomies as $taxonomy => $path ) {
2761
+ $taxonomy_filename = $cache_path . "taxonomy_" . $taxonomy . ".txt";
2762
+ if ( $c == 0 )
2763
+ @unlink( $taxonomy_filename );
2764
+
2765
+ if ( false == @file_exists( $taxonomy_filename ) ) {
2766
+ $out = '';
2767
+ $records = get_terms( $taxonomy );
2768
+ foreach( $records as $term ) {
2769
+ $out .= site_url( $path . "/" . $term->slug . "/" ) . "\n";
2770
+ }
2771
+ $fp = fopen( $taxonomy_filename, 'w' );
2772
+ if ( $fp ) {
2773
+ fwrite( $fp, $out );
2774
+ fclose( $fp );
2775
+ }
2776
+ $details = explode( "\n", $out );
2777
+ } else {
2778
+ $details = explode( "\n", file_get_contents( $taxonomy_filename ) );
2779
+ }
2780
+ if ( count( $details ) != 1 && $details[ 0 ] != '' ) {
2781
+ $rows = array_splice( $details, 0, 50 );
2782
+ if ( $wp_cache_preload_email_me && $wp_cache_preload_email_volume == 'many' )
2783
+ wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] Refreshing %2$s taxonomy from %3$d to %4$d', 'wp-super-cache' ), site_url(), $taxonomy, $c, ($c+100) ), 'Refreshing: ' . print_r( $rows, 1 ) );
2784
+ foreach( (array)$rows as $url ) {
2785
+ set_time_limit( 60 );
2786
+ if ( $url == '' )
2787
+ continue;
2788
+ $url_info = parse_url( $url );
2789
+ $dir = get_supercache_dir() . $url_info[ 'path' ];
2790
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: delete $dir", 5 );
2791
+ prune_super_cache( $dir );
2792
+ $fp = @fopen( $permalink_counter_msg, 'w' );
2793
+ if ( $fp ) {
2794
+ @fwrite( $fp, "$taxonomy: $url" );
2795
+ @fclose( $fp );
2796
+ }
2797
+ wp_remote_get( $url, array('timeout' => 60, 'blocking' => true ) );
2798
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: fetched $url", 5 );
2799
+ sleep( 1 );
2800
+ }
2801
+ $fp = fopen( $taxonomy_filename, 'w' );
2802
+ if ( $fp ) {
2803
+ fwrite( $fp, implode( "\n", $details ) );
2804
+ fclose( $fp );
2805
+ }
2806
  }
 
 
 
 
 
 
 
2807
  }
2808
  }
2809
  }
2810
 
2811
+ if ( $wp_cache_preload_posts == 'all' || $c < $wp_cache_preload_posts ) {
2812
+ $posts = $wpdb->get_col( "SELECT ID FROM {$wpdb->posts} WHERE ( post_type != 'revision' AND post_type != 'nav_menu_item' ) AND post_status = 'publish' ORDER BY ID ASC LIMIT $c, 100" );
2813
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: got 100 posts from position $c.", 5 );
2814
  } else {
2815
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: no more posts to get. Limit ($wp_cache_preload_posts) reached.", 5 );
2816
  $posts = false;
2817
  }
2818
  if ( !isset( $wp_cache_preload_email_volume ) )
2819
  $wp_cache_preload_email_volume = 'medium';
2820
 
 
2821
  if ( $posts ) {
2822
+ if ( get_option( 'show_on_front' ) == 'page' ) {
2823
+ $page_on_front = get_option( 'page_on_front' );
2824
+ $page_for_posts = get_option( 'page_for_posts' );
2825
+ } else {
2826
+ $page_on_front = $page_for_posts = 0;
2827
+ }
2828
  if ( $wp_cache_preload_email_me && $wp_cache_preload_email_volume == 'many' )
2829
  wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] Refreshing posts from %2$d to %3$d', 'wp-super-cache' ), site_url(), $c, ($c+100) ), ' ' );
2830
  $msg = '';
2832
  $permalink_counter_msg = $cache_path . "preload_permalink.txt";
2833
  foreach( $posts as $post_id ) {
2834
  set_time_limit( 60 );
2835
+ if ( $page_on_front != 0 && ( $post_id == $page_on_front || $post_id == $page_for_posts ) )
2836
+ continue;
2837
  clear_post_supercache( $post_id );
2838
  $url = get_permalink( $post_id );
2839
  $fp = @fopen( $permalink_counter_msg, 'w' );
2842
  @fclose( $fp );
2843
  }
2844
  if ( @file_exists( $cache_path . "stop_preload.txt" ) ) {
2845
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: cancelling preload. stop_preload.txt found.", 5 );
2846
  @unlink( $mutex );
2847
  @unlink( $cache_path . "stop_preload.txt" );
2848
  update_option( 'preload_cache_counter', array( 'c' => 0, 't' => time() ) );
2852
  }
2853
  $msg .= "$url\n";
2854
  wp_remote_get( $url, array('timeout' => 60, 'blocking' => true ) );
2855
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: fetched $url", 5 );
2856
  sleep( 1 );
2857
  $count++;
2858
  }
2859
  if ( $wp_cache_preload_email_me && $wp_cache_preload_email_volume != 'less' )
2860
+ wp_mail( get_option( 'admin_email' ), sprintf( __( '[%1$s] %2$d posts refreshed', 'wp-super-cache' ), $_SERVER[ 'SERVER_NAME' ], ($c+100) ), __( "Refreshed the following posts:", 'wp-super-cache' ) . "\n$msg" );
2861
  if ( defined( 'DOING_CRON' ) ) {
2862
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: scheduling the next preload in 30 seconds.", 5 );
2863
  wp_schedule_single_event( time() + 30, 'wp_cache_preload_hook' );
2864
  }
2865
  } else {
2868
  if ( (int)$wp_cache_preload_interval && defined( 'DOING_CRON' ) ) {
2869
  if ( $wp_cache_preload_email_me )
2870
  $msg = sprintf( __( 'Scheduling next preload refresh in %d minutes.', 'wp-super-cache' ), (int)$wp_cache_preload_interval );
2871
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: no more posts. scheduling next preload in $wp_cache_preload_interval minutes.", 5 );
2872
  wp_schedule_single_event( time() + ( (int)$wp_cache_preload_interval * 60 ), 'wp_cache_full_preload_hook' );
2873
  }
2874
  global $file_prefix, $cache_max_time;
2879
  }
2880
  if ( $wp_cache_preload_email_me )
2881
  wp_mail( get_option( 'admin_email' ), sprintf( __( '[%s] Cache Preload Completed', 'wp-super-cache' ), site_url() ), __( "Cleaning up old supercache files.", 'wp-super-cache' ) . "\n" . $msg );
2882
+ if ( isset( $GLOBALS[ 'wp_super_cache_debug' ] ) && $GLOBALS[ 'wp_super_cache_debug' ] ) wp_cache_debug( "wp_cron_preload_cache: clean expired cache files older than $cache_max_time seconds.", 5 );
2883
  wp_cache_phase2_clean_expired( $file_prefix, true ); // force cleanup of old files.
2884
  }
2885
  @unlink( $mutex );
2991
 
2992
  function supercache_admin_bar_render() {
2993
  global $wp_admin_bar, $wp_cache_not_logged_in;
2994
+ if ( !is_user_logged_in() || !$wp_cache_not_logged_in )
2995
  return false;
2996
 
2997
  if ( !wpsupercache_site_admin() )
3001
  'parent' => '',
3002
  'id' => 'delete-cache',
3003
  'title' => __( 'Delete Cache', 'wp-super-cache' ),
3004
+ 'meta' => array( 'title' => __( 'Delete cache of the current page', 'wp-super-cache' ) ),
3005
  'href' => wp_nonce_url( admin_url( 'options-general.php?page=wpsupercache&action=delete&path=' . urlencode( $_SERVER[ 'REQUEST_URI' ] ) ), 'delete-cache' )
3006
  ) );
3007
  }
wp-super-cache.pot CHANGED
@@ -1,17 +1,267 @@
1
- # Copyright (C) 2010
2
  # This file is distributed under the same license as the package.
3
  msgid ""
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-super-cache\n"
7
- "POT-Creation-Date: 2011-12-06 13:03:54+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
- "PO-Revision-Date: 2010-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
15
  #: wp-cache.php:99
16
  msgid ""
17
  "Please create %s /wp-cache-config.php from wp-super-cache/wp-cache-config-"
@@ -114,97 +364,97 @@ msgid ""
114
  "static files. You will still be able to use legacy or PHP modes."
115
  msgstr ""
116
 
117
- #: wp-cache.php:239
118
  msgid "Read Only Mode. Configuration cannot be changed."
119
  msgstr ""
120
 
121
- #: wp-cache.php:240
122
  msgid ""
123
  "The WP Super Cache configuration file is <code>%s/wp-cache-config.php</code> "
124
  "and cannot be modified. That file must be writeable by the webserver to make "
125
  "any changes."
126
  msgstr ""
127
 
128
- #: wp-cache.php:241
129
  msgid ""
130
  "A simple way of doing that is by changing the permissions temporarily using "
131
  "the CHMOD command or through your ftp client. Make sure it&#8217;s globally "
132
  "writeable and it should be fine."
133
  msgstr ""
134
 
135
- #: wp-cache.php:242 wp-cache.php:258
136
  msgid ""
137
  "<a href=\"http://codex.wordpress.org/Changing_File_Permissions\">This page</"
138
  "a> explains how to change file permissions."
139
  msgstr ""
140
 
141
- #: wp-cache.php:243
142
  msgid "Writeable:"
143
  msgstr ""
144
 
145
- #: wp-cache.php:244
146
  msgid "Readonly:"
147
  msgstr ""
148
 
149
- #: wp-cache.php:256
150
  msgid "Warning! %s is writeable!"
151
  msgstr ""
152
 
153
- #: wp-cache.php:257
154
  msgid ""
155
  "You should change the permissions on %s and make it more restrictive. Use "
156
  "your ftp client, or the following command to fix things:"
157
  msgstr ""
158
 
159
- #: wp-cache.php:267
160
  msgid "Mobile rewrite rules detected"
161
  msgstr ""
162
 
163
- #: wp-cache.php:268
164
  msgid ""
165
  "For best performance you should enable \"Mobile device support\" or delete "
166
  "the mobile rewrite rules in your .htaccess. Look for the 2 lines with the "
167
  "text \"2.0\\ MMP|240x320\" and delete those."
168
  msgstr ""
169
 
170
- #: wp-cache.php:268
171
  msgid ""
172
  "This will have no affect on ordinary users but mobile users will see "
173
  "uncached pages."
174
  msgstr ""
175
 
176
- #: wp-cache.php:274 wp-cache.php:285
177
  msgid "Rewrite rules must be updated"
178
  msgstr ""
179
 
180
- #: wp-cache.php:275 wp-cache.php:286
181
  msgid "The rewrite rules required by this plugin have changed or are missing. "
182
  msgstr ""
183
 
184
- #: wp-cache.php:276
185
  msgid ""
186
  "Mobile support requires extra rules in your .htaccess file, or you can set "
187
  "the plugin to legacy mode. Here are your options (in order of difficulty):"
188
  msgstr ""
189
 
190
- #: wp-cache.php:277
191
  msgid "Set the plugin to legacy mode and enable mobile support."
192
  msgstr ""
193
 
194
- #: wp-cache.php:278 wp-cache.php:287
195
  msgid ""
196
  "Scroll down the Advanced Settings page and click the <strong>Update "
197
  "Mod_Rewrite Rules</strong> button."
198
  msgstr ""
199
 
200
- #: wp-cache.php:279
201
  msgid ""
202
  "Delete the plugin mod_rewrite rules in %s.htaccess enclosed by <code># BEGIN "
203
  "WPSuperCache</code> and <code># END WPSuperCache</code> and let the plugin "
204
  "regenerate them by reloading this page."
205
  msgstr ""
206
 
207
- #: wp-cache.php:280
208
  msgid ""
209
  "Add the rules yourself. Edit %s.htaccess and find the block of code enclosed "
210
  "by the lines <code># BEGIN WPSuperCache</code> and <code># END WPSuperCache</"
@@ -213,87 +463,87 @@ msgid ""
213
  "*$</code> add these lines: (do it twice, once for each section)"
214
  msgstr ""
215
 
216
- #: wp-cache.php:293
217
  msgid "Required to serve compressed supercache files properly."
218
  msgstr ""
219
 
220
- #: wp-cache.php:293
221
  msgid ""
222
  "Required to set caching information on supercache pages. IE7 users will see "
223
  "old pages without this module."
224
  msgstr ""
225
 
226
- #: wp-cache.php:293
227
  msgid ""
228
  "Set the expiry date on supercached pages. Visitors may not see new pages "
229
  "when they refresh or leave comments without this module."
230
  msgstr ""
231
 
232
- #: wp-cache.php:300
233
  msgid "Missing Apache Modules"
234
  msgstr ""
235
 
236
- #: wp-cache.php:301
237
  msgid ""
238
  "The following Apache modules are missing. The plugin will work in legacy "
239
  "mode without them. In full Supercache mode, your visitors may see corrupted "
240
  "pages or out of date content however."
241
  msgstr ""
242
 
243
- #: wp-cache.php:484
244
  msgid ""
245
  "<strong>Warning!</strong> You attempted to enable compression but <code>zlib."
246
  "output_compression</code> is enabled. See #21 in the Troubleshooting section "
247
  "of the readme file."
248
  msgstr ""
249
 
250
- #: wp-cache.php:575
251
  msgid "WP Super Cache Settings"
252
  msgstr ""
253
 
254
- #: wp-cache.php:586
255
  msgid ""
256
  "Notice: <em>Mod_rewrite or Legacy caching enabled</em>. Showing Advanced "
257
  "Settings Page by default."
258
  msgstr ""
259
 
260
- #: wp-cache.php:597
261
  msgid ""
262
  "Configuration file changed, some values might be wrong. Load the page again "
263
  "from the \"Settings\" menu to reset them."
264
  msgstr ""
265
 
266
- #: wp-cache.php:627
267
  msgid "Caching must be enabled to use this feature"
268
  msgstr ""
269
 
270
- #: wp-cache.php:645 wp-cache.php:776
271
  msgid "Cancel Cache Preload"
272
  msgstr ""
273
 
274
- #: wp-cache.php:653
275
  msgid ""
276
  "Scheduled preloading of cache almost cancelled. It may take up to a minute "
277
  "for it to cancel completely."
278
  msgstr ""
279
 
280
- #: wp-cache.php:664
281
  msgid "Scheduled preloading of cache cancelled."
282
  msgstr ""
283
 
284
- #: wp-cache.php:690 wp-cache.php:774
285
  msgid "Preload Cache Now"
286
  msgstr ""
287
 
288
- #: wp-cache.php:694
289
  msgid "Scheduled preloading of cache in 10 seconds."
290
  msgstr ""
291
 
292
- #: wp-cache.php:699
293
  msgid "Scheduled preloading of cache in %d minutes"
294
  msgstr ""
295
 
296
- #: wp-cache.php:703
297
  msgid ""
298
  "This will cache every published post and page on your site. It will create "
299
  "supercache static files so unknown visitors (including bots) will hit a "
@@ -301,230 +551,259 @@ msgid ""
301
  "speed as a metric when judging websites now."
302
  msgstr ""
303
 
304
- #: wp-cache.php:704
305
  msgid ""
306
  "Preloading creates lots of files however. Caching is done from the newest "
307
  "post to the oldest so please consider only caching the newest if you have "
308
  "lots (10,000+) of posts. This is especially important on shared hosting."
309
  msgstr ""
310
 
311
- #: wp-cache.php:705
312
  msgid ""
313
  "In &#8217;Preload Mode&#8217; regular garbage collection will only clean out "
314
  "old legacy files for known users, not the preloaded supercache files. This "
315
  "is a recommended setting when the cache is preloaded."
316
  msgstr ""
317
 
318
- #: wp-cache.php:709
319
  msgid ""
320
  "Refresh preloaded cache files every %s minutes. (0 to disable, minimum %d "
321
  "minutes.)"
322
  msgstr ""
323
 
324
- #: wp-cache.php:722
325
  msgid "all"
326
  msgstr ""
327
 
328
- #: wp-cache.php:735
329
  msgid "Preload %s posts."
330
  msgstr ""
331
 
332
- #: wp-cache.php:742
333
  msgid ""
334
  "Preload mode (garbage collection only on legacy cache files. Recommended.)"
335
  msgstr ""
336
 
337
- #: wp-cache.php:745
 
 
 
 
338
  msgid "Send me status emails when files are refreshed."
339
  msgstr ""
340
 
341
- #: wp-cache.php:750
342
  msgid "Many emails, 2 emails per 100 posts."
343
  msgstr ""
344
 
345
- #: wp-cache.php:753
346
  msgid "Medium, 1 email per 100 posts."
347
  msgstr ""
348
 
349
- #: wp-cache.php:756
350
  msgid "Less emails, 1 at the start and 1 at the end of preloading all posts."
351
  msgstr ""
352
 
353
- #: wp-cache.php:760
354
  msgid "Refresh of cache in %d hours %d minutes and %d seconds."
355
  msgstr ""
356
 
357
- #: wp-cache.php:761
358
  msgid "Full refresh of cache in %d hours %d minutes and %d seconds."
359
  msgstr ""
360
 
361
- #: wp-cache.php:767
362
  msgid "Currently caching from post %d to %d."
363
  msgstr ""
364
 
365
- #: wp-cache.php:771
366
  msgid "<strong>Page last cached:</strong> %s"
367
  msgstr ""
368
 
369
- #: wp-cache.php:774
370
  msgid "Update Settings"
371
  msgstr ""
372
 
373
- #: wp-cache.php:782
374
  msgid ""
375
  "Preloading of cache disabled. Please disable legacy page caching or talk to "
376
  "your host administrator."
377
  msgstr ""
378
 
379
- #: wp-cache.php:799 wp-cache.php:897
380
  msgid "Caching"
381
  msgstr ""
382
 
383
- #: wp-cache.php:803
384
  msgid "Cache hits to this website for quick access."
385
  msgstr ""
386
 
387
- #: wp-cache.php:803 wp-cache.php:804 wp-cache.php:821 wp-cache.php:826
388
- #: wp-cache.php:829 wp-cache.php:831 wp-cache.php:844 wp-cache.php:900
389
  msgid "Recommended"
390
  msgstr ""
391
 
392
- #: wp-cache.php:804
393
  msgid "Use mod_rewrite to serve cache files."
394
  msgstr ""
395
 
396
- #: wp-cache.php:805
397
  msgid "Use PHP to serve cache files."
398
  msgstr ""
399
 
400
- #: wp-cache.php:806
401
  msgid "Legacy page caching."
402
  msgstr ""
403
 
404
- #: wp-cache.php:807
405
  msgid ""
406
  "Mod_rewrite is fastest, PHP is almost as fast and easier to get working, "
407
  "while legacy caching is slower again, but more flexible and also easy to get "
408
  "working. New users should use PHP caching."
409
  msgstr ""
410
 
411
- #: wp-cache.php:813
412
  msgid "Miscellaneous"
413
  msgstr ""
414
 
415
- #: wp-cache.php:819
416
  msgid "Warning! Compression is disabled as gzencode() function not found."
417
  msgstr ""
418
 
419
- #: wp-cache.php:821
420
  msgid "Compress pages so they&#8217;re served more quickly to visitors."
421
  msgstr ""
422
 
423
- #: wp-cache.php:822
424
  msgid ""
425
  "Compression is disabled by default because some hosts have problems with "
426
  "compressed files. Switching it on and off clears the cache."
427
  msgstr ""
428
 
429
- #: wp-cache.php:826
430
  msgid ""
431
  "304 Not Modified browser caching. Indicate when a page has not been modified "
432
  "since last requested."
433
  msgstr ""
434
 
435
- #: wp-cache.php:827
 
 
 
 
 
 
436
  msgid ""
437
  "304 support is disabled by default because in the past GoDaddy had problems "
438
  "with some of the headers used."
439
  msgstr ""
440
 
441
- #: wp-cache.php:829
442
  msgid ""
443
  "Don&#8217;t cache pages for <acronym title=\"Logged in users and those that "
444
  "comment\">known users</acronym>."
445
  msgstr ""
446
 
447
- #: wp-cache.php:830
 
 
 
 
448
  msgid ""
449
  "Make known users anonymous so they&#8217;re served supercached static files."
450
  msgstr ""
451
 
452
- #: wp-cache.php:831
453
  msgid ""
454
  "Cache rebuild. Serve a supercache file to anonymous users while a new file "
455
  "is being generated."
456
  msgstr ""
457
 
458
- #: wp-cache.php:832
459
  msgid ""
460
  "Proudly tell the world your server is <a href=\"%s\">Stephen Fry proof</a>! "
461
  "(places a message in your blog&#8217;s footer)"
462
  msgstr ""
463
 
464
- #: wp-cache.php:838 wp-cache.php:1109 wp-cache.php:1719
465
  msgid "Advanced"
466
  msgstr ""
467
 
468
- #: wp-cache.php:842
469
  msgid ""
470
  "Mobile device support. (External plugin or theme required. See the <a href="
471
  "\"http://wordpress.org/extend/plugins/wp-super-cache/faq/\">FAQ</a> for "
472
  "further details.)"
473
  msgstr ""
474
 
475
- #: wp-cache.php:843
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
476
  msgid "Clear all cache files when a post or page is published or updated."
477
  msgstr ""
478
 
479
- #: wp-cache.php:844
480
  msgid "Extra homepage checks. (Very occasionally stops homepage caching)"
481
  msgstr ""
482
 
483
- #: wp-cache.php:845
484
  msgid "Only refresh current page when comments made."
485
  msgstr ""
486
 
487
- #: wp-cache.php:846
488
  msgid "List the newest cached pages on this page."
489
  msgstr ""
490
 
491
- #: wp-cache.php:848
492
  msgid ""
493
  "Coarse file locking. You probably don&#8217;t need this but it may help if "
494
  "your server is underpowered. Warning! <em>May cause your server to lock up "
495
  "in very rare cases!</em>"
496
  msgstr ""
497
 
498
- #: wp-cache.php:850
499
  msgid ""
500
  "Late init. Display cached files after WordPress has loaded. Most useful in "
501
  "legacy mode."
502
  msgstr ""
503
 
504
- #: wp-cache.php:852
505
  msgid "Use object cache to store cached files."
506
  msgstr ""
507
 
508
- #: wp-cache.php:852
509
  msgid "(Experimental)"
510
  msgstr ""
511
 
512
- #: wp-cache.php:854
513
  msgid "<strong>DO NOT CACHE PAGE</strong> secret key: <a href=\"%s\">%s</a>"
514
  msgstr ""
515
 
516
- #: wp-cache.php:860
517
  msgid "Note:"
518
  msgstr ""
519
 
520
- #: wp-cache.php:862
521
  msgid ""
522
  "Uninstall this plugin on the plugins page. It will automatically clean up "
523
  "after itself. If manual intervention is required then simple instructions "
524
  "are provided."
525
  msgstr ""
526
 
527
- #: wp-cache.php:863
528
  msgid ""
529
  "If uninstalling this plugin, make sure the directory <em>%s</em> is "
530
  "writeable by the webserver so the files <em>advanced-cache.php</em> and "
@@ -532,14 +811,14 @@ msgid ""
532
  "files are writeable too is probably a good idea!)"
533
  msgstr ""
534
 
535
- #: wp-cache.php:864
536
  msgid ""
537
  "Please see the <a href=\"%1$s/wp-super-cache/readme.txt\">readme.txt</a> for "
538
  "instructions on uninstalling this script. Look for the heading, \"How to "
539
  "uninstall WP Super Cache\"."
540
  msgstr ""
541
 
542
- #: wp-cache.php:865
543
  msgid ""
544
  "Need help? Check the <a href=\"%1$s\">Super Cache readme file</a>. It "
545
  "includes installation documentation, a FAQ and Troubleshooting tips. The <a "
@@ -547,27 +826,27 @@ msgid ""
547
  "have been answered."
548
  msgstr ""
549
 
550
- #: wp-cache.php:868 wp-cache.php:915
551
  msgid "Update Status"
552
  msgstr ""
553
 
554
- #: wp-cache.php:875
555
  msgid "Accepted Filenames &amp; Rejected URIs"
556
  msgstr ""
557
 
558
- #: wp-cache.php:900
559
  msgid "Caching On"
560
  msgstr ""
561
 
562
- #: wp-cache.php:901
563
  msgid "Caching Off"
564
  msgstr ""
565
 
566
- #: wp-cache.php:902
567
  msgid "Note: enables PHP caching, cache rebuild, and mobile support"
568
  msgstr ""
569
 
570
- #: wp-cache.php:912
571
  msgid ""
572
  "Notice: PHP caching enabled but Supercache mod_rewrite rules detected. "
573
  "Cached files will be served using those rules. If your site is working ok "
@@ -575,127 +854,125 @@ msgid ""
575
  "your install and remove the SuperCache rules."
576
  msgstr ""
577
 
578
- #: wp-cache.php:917
579
  msgid "Cache Tester"
580
  msgstr ""
581
 
582
- #: wp-cache.php:918
583
  msgid "Test your cached website by clicking the test button below."
584
  msgstr ""
585
 
586
- #: wp-cache.php:924
587
  msgid "Fetching %s to prime cache: "
588
  msgstr ""
589
 
590
- #: wp-cache.php:926 wp-cache.php:935 wp-cache.php:947
591
  msgid "OK"
592
  msgstr ""
593
 
594
- #: wp-cache.php:929
595
  msgid "Fetching first copy of %s: "
596
  msgstr ""
597
 
598
- #: wp-cache.php:938 wp-cache.php:949
599
  msgid "FAILED"
600
  msgstr ""
601
 
602
- #: wp-cache.php:941
603
  msgid "Fetching second copy of %s: "
604
  msgstr ""
605
 
606
- #: wp-cache.php:953
607
  msgid "One or more page requests failed:"
608
  msgstr ""
609
 
610
- #: wp-cache.php:972 wp-cache.php:973
611
  msgid "Page %d: %d (%s)"
612
  msgstr ""
613
 
614
- #: wp-cache.php:979
615
  msgid "Page 1: %s"
616
  msgstr ""
617
 
618
- #: wp-cache.php:980
619
  msgid "Page 2: %s"
620
  msgstr ""
621
 
622
- #: wp-cache.php:981
623
  msgid "The timestamps on both pages match!"
624
  msgstr ""
625
 
626
- #: wp-cache.php:983
627
  msgid "The pages do not match! Timestamps differ or were not found!"
628
  msgstr ""
629
 
630
- #: wp-cache.php:984
631
  msgid "Things you can do:"
632
  msgstr ""
633
 
634
- #: wp-cache.php:985
635
  msgid ""
636
  "Load your homepage in a logged out browser, check the timestamp at the end "
637
  "of the html source. Load the page again and compare the timestamp. Caching "
638
  "is working if the timestamps match."
639
  msgstr ""
640
 
641
- #: wp-cache.php:986
642
  msgid ""
643
  "Enable logging on the Debug page here. That should help you track down the "
644
  "problem."
645
  msgstr ""
646
 
647
- #: wp-cache.php:987
648
  msgid ""
649
  "You should check Page 1 and Page 2 above for errors. Your local server "
650
  "configuration may not allow your website to access itself."
651
  msgstr ""
652
 
653
- #: wp-cache.php:995
654
  msgid "Send non-secure (non https) request for homepage"
655
  msgstr ""
656
 
657
- #: wp-cache.php:996
658
  msgid "Test Cache"
659
  msgstr ""
660
 
661
- #: wp-cache.php:1000
662
  msgid "Delete Cached Pages"
663
  msgstr ""
664
 
665
- #: wp-cache.php:1001
666
  msgid ""
667
  "Cached pages are stored on your server as html and PHP files. If you need to "
668
  "delete them use the button below."
669
  msgstr ""
670
 
671
- #: wp-cache.php:1004 wp-cache.php:2253 wp-cache.php:2272 wp-cache.php:2436
672
- #: wp-cache.php:2922
673
  msgid "Delete Cache"
674
  msgstr ""
675
 
676
- #: wp-cache.php:1011 wp-cache.php:2259
677
  msgid "Delete Cache On All Blogs"
678
  msgstr ""
679
 
680
- #: wp-cache.php:1016
681
  msgid "Recommended Links and Plugins"
682
  msgstr ""
683
 
684
- #: wp-cache.php:1017
685
  msgid ""
686
  "Caching is only one part of making a website faster. Here are some other "
687
  "plugins that will help:"
688
  msgstr ""
689
 
690
- #: wp-cache.php:1018
691
  msgid ""
692
- "<a href=\"%s\">WP Minify</a> reduces the number of files served by your web "
693
- "server by joining Javascript and CSS files together. Alternatively you can "
694
- "use <a href=\"%s\">WPSCMin</a>, a Supercache plugin that minifies cached "
695
- "pages. It does not however join JS/CSS files together."
696
  msgstr ""
697
 
698
- #: wp-cache.php:1019
699
  msgid ""
700
  "<a href=\"%s\">Yahoo! Yslow</a> is an extension for the Firefox add-on "
701
  "Firebug. It analyzes web pages and suggests ways to improve their "
@@ -703,176 +980,180 @@ msgid ""
703
  "the performance tools online at <a href=\"%s\">GTMetrix</a>."
704
  msgstr ""
705
 
706
- #: wp-cache.php:1020
707
  msgid ""
708
  "<a href=\"%s\">Use Google Libraries</a> allows you to load some commonly "
709
  "used Javascript libraries from Google webservers. Ironically it may reduce "
710
  "your Yslow score."
711
  msgstr ""
712
 
713
- #: wp-cache.php:1021 ossdl-cdn.php:150
714
- msgid ""
715
- "The <a href=\"%1$s\">CDN Sync Tool</a> plugin will help upload files to "
716
- "Amazon S3/Cloudfront if you would rather not depend on origin pull. See the "
717
- "<a href=\"%2$s\">plugin support forum</a> if you have any queries about this "
718
- "plugin."
719
- msgstr ""
720
-
721
- #: wp-cache.php:1022
722
  msgid ""
723
  "<strong>Advanced users only:</strong> <a href=\"%s\">Speed up your site with "
724
  "Caching and cache-control</a> explains how to make your site more cacheable "
725
  "with .htaccess rules."
726
  msgstr ""
727
 
728
- #: wp-cache.php:1023
729
  msgid ""
730
  "<strong>Advanced users only:</strong> Install an object cache. Choose from "
731
  "<a href=\"%s\">Memcached</a>, <a href=\"%s\">XCache</a>, <a href=\"%s"
732
  "\">eAcccelerator</a> and others."
733
  msgstr ""
734
 
735
- #: wp-cache.php:1034
 
 
 
 
 
 
736
  msgid "Make WordPress Faster"
737
  msgstr ""
738
 
739
- #: wp-cache.php:1035
740
  msgid ""
741
  "%1$s is maintained and developed by %2$s with contributions from many others."
742
  msgstr ""
743
 
744
- #: wp-cache.php:1036
745
  msgid "He blogs at %1$s and posts photos at %2$s."
746
  msgstr ""
747
 
748
- #: wp-cache.php:1037
749
  msgid "Please say hi to him on %s too!"
750
  msgstr ""
751
 
752
- #: wp-cache.php:1038
753
  msgid "Need Help?"
754
  msgstr ""
755
 
756
- #: wp-cache.php:1040
 
 
 
 
 
 
757
  msgid "<a href=\"%1$s\">Installation Help</a>"
758
  msgstr ""
759
 
760
- #: wp-cache.php:1041
761
  msgid "<a href=\"%1$s\">Frequently Asked Questions</a>"
762
  msgstr ""
763
 
764
- #: wp-cache.php:1042
765
  msgid "<a href=\"%1$s\">Support Forum</a>"
766
  msgstr ""
767
 
768
- #: wp-cache.php:1044
769
  msgid "Rate This Plugin!"
770
  msgstr ""
771
 
772
- #: wp-cache.php:1045
773
  msgid ""
774
  "Please <a href=\"%s\">rate</a> this plugin and tell me if it works for you "
775
  "or not. It really helps development."
776
  msgstr ""
777
 
778
- #: wp-cache.php:1054
779
  msgid "Cached pages since %1$s : <strong>%2$s</strong>"
780
  msgstr ""
781
 
782
- #: wp-cache.php:1055
783
  msgid "Newest Cached Pages:"
784
  msgstr ""
785
 
786
- #: wp-cache.php:1059
787
  msgid "Cached %s seconds ago"
788
  msgstr ""
789
 
790
- #: wp-cache.php:1062
791
  msgid "(may not always be accurate on busy sites)"
792
  msgstr ""
793
 
794
- #: wp-cache.php:1081
795
  msgid ""
796
  "Cache plugins are PHP scripts that live in a plugins folder inside the wp-"
797
  "super-cache folder. They are loaded when Supercache loads, much sooner than "
798
  "regular WordPress plugins."
799
  msgstr ""
800
 
801
- #: wp-cache.php:1082
802
  msgid ""
803
  "This is strictly an advanced feature only and knowledge of both PHP and "
804
  "WordPress actions is required to create them."
805
  msgstr ""
806
 
807
- #: wp-cache.php:1092
808
  msgid "Available Plugins"
809
  msgstr ""
810
 
811
- #: wp-cache.php:1109
812
  msgid "Easy"
813
  msgstr ""
814
 
815
- #: wp-cache.php:1109
816
  msgid "CDN"
817
  msgstr ""
818
 
819
- #: wp-cache.php:1109
820
  msgid "Contents"
821
  msgstr ""
822
 
823
- #: wp-cache.php:1109
824
  msgid "Preload"
825
  msgstr ""
826
 
827
- #: wp-cache.php:1109
828
  msgid "Plugins"
829
  msgstr ""
830
 
831
- #: wp-cache.php:1109
832
  msgid "Debug"
833
  msgstr ""
834
 
835
- #: wp-cache.php:1144
836
  msgid ""
837
  "Notice: WP Super Cache mod_rewrite rule checks disabled unless running on <a "
838
  "href=\"%s\">the main site</a> of this network."
839
  msgstr ""
840
 
841
- #: wp-cache.php:1153
842
  msgid "Mod Rewrite Rules"
843
  msgstr ""
844
 
845
- #: wp-cache.php:1159
846
  msgid "WordPress MU Detected"
847
  msgstr ""
848
 
849
- #: wp-cache.php:1159
850
  msgid ""
851
  "Unfortunately the rewrite rules cannot be updated automatically when running "
852
  "WordPress MU. Please open your .htaccess and add the following mod_rewrite "
853
  "rules above any other rules in that file."
854
  msgstr ""
855
 
856
- #: wp-cache.php:1161
857
  msgid "Mod Rewrite rules cannot be updated!"
858
  msgstr ""
859
 
860
- #: wp-cache.php:1162
861
  msgid ""
862
  "You must have <strong>BEGIN</strong> and <strong>END</strong> markers in %s."
863
  "htaccess for the auto update to work. They look like this and surround the "
864
  "main WordPress mod_rewrite rules:"
865
  msgstr ""
866
 
867
- #: wp-cache.php:1164
868
  msgid "Refresh this page when you have updated your .htaccess file."
869
  msgstr ""
870
 
871
- #: wp-cache.php:1168
872
  msgid "Thank you for upgrading."
873
  msgstr ""
874
 
875
- #: wp-cache.php:1168
876
  msgid ""
877
  "The mod_rewrite rules changed since you last installed this plugin. "
878
  "Unfortunately you must remove the old supercache rules before the new ones "
@@ -884,11 +1165,11 @@ msgid ""
884
  "brave enough to use them."
885
  msgstr ""
886
 
887
- #: wp-cache.php:1172
888
  msgid "Trailing slash check required."
889
  msgstr ""
890
 
891
- #: wp-cache.php:1172
892
  msgid ""
893
  "It looks like your blog has URLs that end with a \"/\". Unfortunately since "
894
  "you installed this plugin a duplicate content bug has been found where URLs "
@@ -897,41 +1178,41 @@ msgid ""
897
  "and add these two rules to the two groups of Super Cache rules:"
898
  msgstr ""
899
 
900
- #: wp-cache.php:1174
901
  msgid ""
902
  "You can see where the rules go and examine the complete rules by clicking "
903
  "the \"View mod_rewrite rules\" link below."
904
  msgstr ""
905
 
906
- #: wp-cache.php:1188
907
  msgid "Mod Rewrite rules updated!"
908
  msgstr ""
909
 
910
- #: wp-cache.php:1189
911
  msgid ""
912
  "%s.htaccess has been updated with the necessary mod_rewrite rules. Please "
913
  "verify they are correct. They should look like this:"
914
  msgstr ""
915
 
916
- #: wp-cache.php:1191
917
  msgid "Mod Rewrite rules must be updated!"
918
  msgstr ""
919
 
920
- #: wp-cache.php:1192
921
  msgid ""
922
  "Your %s.htaccess is not writable by the webserver and must be updated with "
923
  "the necessary mod_rewrite rules. The new rules go above the regular "
924
  "WordPress rules as shown in the code below:"
925
  msgstr ""
926
 
927
- #: wp-cache.php:1197
928
  msgid ""
929
  "WP Super Cache mod rewrite rules were detected in your %s.htaccess file.<br /"
930
  "> Click the following link to see the lines added to that file. If you have "
931
  "upgraded the plugin make sure these rules match."
932
  msgstr ""
933
 
934
- #: wp-cache.php:1200
935
  msgid ""
936
  "A difference between the rules in your .htaccess file and the plugin rewrite "
937
  "rules has been found. This could be simple whitespace differences but you "
@@ -939,251 +1220,243 @@ msgid ""
939
  "Click the &#8217;Update Mod_Rewrite Rules&#8217; button to update the rules."
940
  msgstr ""
941
 
942
- #: wp-cache.php:1202
943
  msgid "View Mod_Rewrite Rules"
944
  msgstr ""
945
 
946
- #: wp-cache.php:1208 wp-cache.php:2552
947
  msgid "Rules must be added to %s too:"
948
  msgstr ""
949
 
950
- #: wp-cache.php:1215
951
  msgid "Gzip encoding rules in %s.htaccess created."
952
  msgstr ""
953
 
954
- #: wp-cache.php:1222
955
  msgid "Fix Configuration"
956
  msgstr ""
957
 
958
- #: wp-cache.php:1225
959
  msgid "Restore Default Configuration"
960
  msgstr ""
961
 
962
- #: wp-cache.php:1233
963
  msgid ""
964
  "Comment moderation is enabled. Your comment may take some time to appear."
965
  msgstr ""
966
 
967
- #: wp-cache.php:1258
968
  msgid "Lock Down:"
969
  msgstr ""
970
 
971
- #: wp-cache.php:1258 plugins/awaitingmoderation.php:35
972
- #: plugins/domain-mapping.php:61 plugins/badbehaviour.php:66
973
- msgid "Disabled"
974
- msgstr ""
975
-
976
- #: wp-cache.php:1258 plugins/awaitingmoderation.php:34
977
- #: plugins/domain-mapping.php:60 plugins/badbehaviour.php:65
978
- msgid "Enabled"
979
- msgstr ""
980
-
981
- #: wp-cache.php:1259
982
  msgid ""
983
  "Prepare your server for an expected spike in traffic by enabling the lock "
984
  "down. When this is enabled, new comments on a post will not refresh the "
985
  "cached static files."
986
  msgstr ""
987
 
988
- #: wp-cache.php:1260
989
  msgid ""
990
  "Developers: Make your plugin lock down compatible by checking the "
991
  "\"WPLOCKDOWN\" constant. The following code will make sure your plugin "
992
  "respects the WPLOCKDOWN setting."
993
  msgstr ""
994
 
995
- #: wp-cache.php:1262
996
  msgid "Sorry. My blog is locked down. Updates will appear shortly"
997
  msgstr ""
998
 
999
- #: wp-cache.php:1266
1000
  msgid ""
1001
  "WordPress is locked down. Super Cache static files will not be deleted when "
1002
  "new comments are made."
1003
  msgstr ""
1004
 
1005
- #: wp-cache.php:1268
1006
  msgid ""
1007
  "WordPress is not locked down. New comments will refresh Super Cache static "
1008
  "files as normal."
1009
  msgstr ""
1010
 
1011
- #: wp-cache.php:1271 plugins/searchengine.php:61 plugins/searchengine.php:76
1012
- msgid "Disable"
1013
- msgstr ""
1014
-
1015
- #: wp-cache.php:1271 plugins/searchengine.php:74
1016
- msgid "Enable"
1017
- msgstr ""
1018
-
1019
- #: wp-cache.php:1274
1020
  msgid "Lock Down"
1021
  msgstr ""
1022
 
1023
- #: wp-cache.php:1282
1024
  msgid "Directly Cached Files"
1025
  msgstr ""
1026
 
1027
- #: wp-cache.php:1340
1028
  msgid "%s removed!"
1029
  msgstr ""
1030
 
1031
- #: wp-cache.php:1348 wp-cache.php:1353 plugins/badbehaviour.php:83
1032
- msgid "Warning!"
1033
- msgstr ""
1034
-
1035
- #: wp-cache.php:1348
1036
  msgid ""
1037
  "You must make %s writable to enable this feature. As this is a security risk "
1038
  "please make it readonly after your page is generated."
1039
  msgstr ""
1040
 
1041
- #: wp-cache.php:1353
1042
  msgid ""
1043
  "%s is writable. Please make it readonly after your page is generated as this "
1044
  "is a security risk."
1045
  msgstr ""
1046
 
1047
- #: wp-cache.php:1368
1048
  msgid "Existing direct page"
1049
  msgstr ""
1050
 
1051
- #: wp-cache.php:1368
1052
  msgid "Delete cached file"
1053
  msgstr ""
1054
 
1055
- #: wp-cache.php:1373
1056
  msgid "Add direct page:"
1057
  msgstr ""
1058
 
1059
- #: wp-cache.php:1375
1060
  msgid ""
1061
  "Directly cached files are files created directly off %s where your blog "
1062
  "lives. This feature is only useful if you are expecting a major Digg or "
1063
  "Slashdot level of traffic to one post or page."
1064
  msgstr ""
1065
 
1066
- #: wp-cache.php:1377
1067
  msgid ""
1068
  "For example: to cache <em>%1$sabout/</em>, you would enter %1$sabout/ or /"
1069
  "about/. The cached file will be generated the next time an anonymous user "
1070
  "visits that page."
1071
  msgstr ""
1072
 
1073
- #: wp-cache.php:1378
1074
  msgid ""
1075
  "Make the textbox blank to remove it from the list of direct pages and delete "
1076
  "the cached file."
1077
  msgstr ""
1078
 
1079
- #: wp-cache.php:1383
1080
  msgid "Update Direct Pages"
1081
  msgstr ""
1082
 
1083
- #: wp-cache.php:1468
 
 
 
 
 
1084
  msgid "Expiry Time &amp; Garbage Collection"
1085
  msgstr ""
1086
 
1087
- #: wp-cache.php:1470
1088
- msgid "Current server time is: %s"
 
 
 
 
 
1089
  msgstr ""
1090
 
1091
- #: wp-cache.php:1472
1092
- msgid "Next scheduled garbage collection will be at (YY-MM-DD H:M:S): %s"
1093
  msgstr ""
1094
 
1095
- #: wp-cache.php:1475
1096
  msgid ""
1097
  "Warning! <strong>PRELOAD MODE</strong> activated. Supercache files will not "
1098
  "be deleted regardless of age."
1099
  msgstr ""
1100
 
1101
- #: wp-cache.php:1492
1102
  msgid "Cache Timeout"
1103
  msgstr ""
1104
 
1105
- #: wp-cache.php:1493 wp-cache.php:1496
1106
  msgid "seconds"
1107
  msgstr ""
1108
 
1109
- #: wp-cache.php:1494
1110
  msgid ""
1111
  "How long should cached pages remain fresh? Set to 0 to disable garbage "
1112
  "collection. A good starting point is 3600 seconds."
1113
  msgstr ""
1114
 
1115
- #: wp-cache.php:1495
1116
  msgid "Scheduler"
1117
  msgstr ""
1118
 
1119
- #: wp-cache.php:1495
1120
  msgid "Timer:"
1121
  msgstr ""
1122
 
1123
- #: wp-cache.php:1496
1124
  msgid "Check for stale cached files every <em>interval</em> seconds."
1125
  msgstr ""
1126
 
1127
- #: wp-cache.php:1497
1128
  msgid "Clock:"
1129
  msgstr ""
1130
 
1131
- #: wp-cache.php:1498
1132
  msgid "HH:MM"
1133
  msgstr ""
1134
 
1135
- #: wp-cache.php:1498
1136
  msgid ""
1137
- "Check for stale cached files at this time or starting at this time every "
1138
- "<em>interval</em> below."
1139
  msgstr ""
1140
 
1141
- #: wp-cache.php:1500
1142
  msgid "Interval:"
1143
  msgstr ""
1144
 
1145
- #: wp-cache.php:1506
1146
  msgid "Notification Emails"
1147
  msgstr ""
1148
 
1149
- #: wp-cache.php:1509
 
 
 
 
1150
  msgid "Garbage Collection"
1151
  msgstr ""
1152
 
1153
- #: wp-cache.php:1510
1154
  msgid ""
1155
  "<em>Garbage collection</em> is the simple act of throwing out your garbage. "
1156
  "For this plugin that would be old or <em>stale</em> cached files that may be "
1157
  "out of date. New cached files are described as <em>fresh</em>."
1158
  msgstr ""
1159
 
1160
- #: wp-cache.php:1511
1161
  msgid ""
1162
  "Cached files are fresh for a limited length of time. You can set that time "
1163
  "in the <em>Cache Timeout</em> text box on this page."
1164
  msgstr ""
1165
 
1166
- #: wp-cache.php:1512
1167
  msgid ""
1168
  "Stale cached files are not removed as soon as they become stale. They have "
1169
  "to be removed by the garbage collecter. That is why you have to tell the "
1170
  "plugin when the garbage collector should run."
1171
  msgstr ""
1172
 
1173
- #: wp-cache.php:1513
1174
  msgid ""
1175
  "Use the <em>Timer</em> or <em>Clock</em> schedulers to define when the "
1176
  "garbage collector should run."
1177
  msgstr ""
1178
 
1179
- #: wp-cache.php:1514
1180
  msgid ""
1181
  "The <em>Timer</em> scheduler tells the plugin to run the garbage collector "
1182
  "at regular intervals. When one garbage collection is done, the next run is "
1183
  "scheduled."
1184
  msgstr ""
1185
 
1186
- #: wp-cache.php:1515
1187
  msgid ""
1188
  "Or, the <em>Clock</em> scheduler allows the garbage collection to run at "
1189
  "specific times. If set to run hourly or twicedaily the garbage collector "
@@ -1192,42 +1465,42 @@ msgid ""
1192
  "time specified."
1193
  msgstr ""
1194
 
1195
- #: wp-cache.php:1517
1196
  msgid ""
1197
  "There are no best garbage collection settings but here are a few scenarios. "
1198
  "Garbage collection is separate to other actions that clear our cached files "
1199
  "like leaving a comment or publishing a post."
1200
  msgstr ""
1201
 
1202
- #: wp-cache.php:1519
1203
  msgid ""
1204
  "Sites that want to serve lots of newly generated data should set the "
1205
  "<em>Cache Timeout</em> to 60 and use the <em>Timer</em> scheduler set to 90 "
1206
  "seconds."
1207
  msgstr ""
1208
 
1209
- #: wp-cache.php:1520
1210
  msgid ""
1211
  "Sites with widgets and rss feeds in their sidebar should probably use a "
1212
  "timeout of 3600 seconds and set the timer to 600 seconds. Stale files will "
1213
  "be caught within 10 minutes of going stale."
1214
  msgstr ""
1215
 
1216
- #: wp-cache.php:1521
1217
  msgid ""
1218
  "Sites with lots of static content, no widgets or rss feeds in their sidebar "
1219
  "can use a timeout of 86400 seconds or even more and set the timer to "
1220
  "something equally long."
1221
  msgstr ""
1222
 
1223
- #: wp-cache.php:1522
1224
  msgid ""
1225
  "Sites where an external data source updates at a particular time every day "
1226
  "should set the timeout to 86400 seconds and use the Clock scheduler set "
1227
  "appropriately."
1228
  msgstr ""
1229
 
1230
- #: wp-cache.php:1524
1231
  msgid ""
1232
  "Checking for and deleting expired files is expensive, but it&#8217;s "
1233
  "expensive leaving them there too. On a very busy site you should set the "
@@ -1238,81 +1511,81 @@ msgid ""
1238
  "using mod_rewrite or PHP caching."
1239
  msgstr ""
1240
 
1241
- #: wp-cache.php:1525
1242
  msgid "Set the expiry time to 0 seconds to disable garbage collection."
1243
  msgstr ""
1244
 
1245
- #: wp-cache.php:1526
1246
  msgid "Change Expiration"
1247
  msgstr ""
1248
 
1249
- #: wp-cache.php:1570
1250
  msgid "Rejected User Agents"
1251
  msgstr ""
1252
 
1253
- #: wp-cache.php:1571
1254
  msgid ""
1255
  "Strings in the HTTP &#8217;User Agent&#8217; header that prevent WP-Cache "
1256
  "from caching bot, spiders, and crawlers&#8217; requests. Note that super "
1257
  "cached files are still sent to these agents if they already exists."
1258
  msgstr ""
1259
 
1260
- #: wp-cache.php:1578
1261
  msgid "Save UA Strings"
1262
  msgstr ""
1263
 
1264
- #: wp-cache.php:1601
1265
  msgid ""
1266
  "Do not cache the following page types. See the <a href=\"http://codex."
1267
  "wordpress.org/Conditional_Tags\">Conditional Tags</a> documentation for a "
1268
  "complete discussion on each type."
1269
  msgstr ""
1270
 
1271
- #: wp-cache.php:1604
1272
  msgid "Single Posts"
1273
  msgstr ""
1274
 
1275
- #: wp-cache.php:1605
1276
  msgid "Pages"
1277
  msgstr ""
1278
 
1279
- #: wp-cache.php:1606
1280
  msgid "Front Page"
1281
  msgstr ""
1282
 
1283
- #: wp-cache.php:1607
1284
  msgid "Home"
1285
  msgstr ""
1286
 
1287
- #: wp-cache.php:1608
1288
  msgid "Archives"
1289
  msgstr ""
1290
 
1291
- #: wp-cache.php:1609
1292
  msgid "Tags"
1293
  msgstr ""
1294
 
1295
- #: wp-cache.php:1610
1296
  msgid "Category"
1297
  msgstr ""
1298
 
1299
- #: wp-cache.php:1611
1300
  msgid "Feeds"
1301
  msgstr ""
1302
 
1303
- #: wp-cache.php:1612
1304
  msgid "Search Pages"
1305
  msgstr ""
1306
 
1307
- #: wp-cache.php:1613
1308
  msgid "Author Pages"
1309
  msgstr ""
1310
 
1311
- #: wp-cache.php:1615 wp-cache.php:1729
1312
  msgid "Save"
1313
  msgstr ""
1314
 
1315
- #: wp-cache.php:1632
1316
  msgid ""
1317
  "Add here strings (not a filename) that forces a page not to be cached. For "
1318
  "example, if your URLs include year and you dont want to cache last year "
@@ -1321,57 +1594,43 @@ msgid ""
1321
  "cache that page."
1322
  msgstr ""
1323
 
1324
- #: wp-cache.php:1638
1325
  msgid "Save Strings"
1326
  msgstr ""
1327
 
1328
- #: wp-cache.php:1654
1329
  msgid ""
1330
  "Add here those filenames that can be cached, even if they match one of the "
1331
  "rejected substring specified above."
1332
  msgstr ""
1333
 
1334
- #: wp-cache.php:1660
1335
  msgid "Save Files"
1336
  msgstr ""
1337
 
1338
- #: wp-cache.php:1701
1339
  msgid "Currently logging to: %s"
1340
  msgstr ""
1341
 
1342
- #: wp-cache.php:1704
1343
  msgid ""
1344
  "Fix problems with the plugin by debugging it here. It can log them to a file "
1345
  "in your cache directory."
1346
  msgstr ""
1347
 
1348
- #: wp-cache.php:1708
1349
  msgid "Debugging"
1350
  msgstr ""
1351
 
1352
- #: wp-cache.php:1708 plugins/awaitingmoderation.php:40
1353
- #: plugins/searchengine.php:69 plugins/domain-mapping.php:66
1354
- #: plugins/badbehaviour.php:71
1355
- msgid "enabled"
1356
- msgstr ""
1357
-
1358
- #: wp-cache.php:1709
1359
  msgid "IP Address"
1360
  msgstr ""
1361
 
1362
- #: wp-cache.php:1709
1363
  msgid "(only log requests from this IP address. Your IP is %s)"
1364
  msgstr ""
1365
 
1366
- #: wp-cache.php:1710
1367
- msgid "Log level"
1368
- msgstr ""
1369
-
1370
- #: wp-cache.php:1716
1371
- msgid "(1 = less, 5 = more, may cause severe server load.)"
1372
- msgstr ""
1373
-
1374
- #: wp-cache.php:1719
1375
  msgid ""
1376
  "In very rare cases two problems may arise on some blogs:<ol><li> The front "
1377
  "page may start downloading as a zip file.</li><li> The wrong page is "
@@ -1379,7 +1638,7 @@ msgid ""
1379
  "and the permalink structure is <em>/%category%/%postname%/</em>.</li></ol>"
1380
  msgstr ""
1381
 
1382
- #: wp-cache.php:1720
1383
  msgid ""
1384
  "I&#8217;m 99% certain that they aren&#8217;t bugs in WP Super Cache and they "
1385
  "only happen in very rare cases but you can run a simple check once every 5 "
@@ -1387,88 +1646,88 @@ msgid ""
1387
  "emailed if there is a problem."
1388
  msgstr ""
1389
 
1390
- #: wp-cache.php:1722
1391
  msgid "Check front page every 5 minutes."
1392
  msgstr ""
1393
 
1394
- #: wp-cache.php:1723
1395
  msgid "Front page text"
1396
  msgstr ""
1397
 
1398
- #: wp-cache.php:1723
1399
  msgid ""
1400
  "Text to search for on your front page. If this text is missing the cache "
1401
  "will be cleared. Leave blank to disable."
1402
  msgstr ""
1403
 
1404
- #: wp-cache.php:1724
1405
  msgid "Clear cache on error."
1406
  msgstr ""
1407
 
1408
- #: wp-cache.php:1725
1409
  msgid "Email the blog admin when checks are made. (useful for testing)"
1410
  msgstr ""
1411
 
1412
- #: wp-cache.php:1739
1413
  msgid ""
1414
  "Error: GZIP compression is enabled, disable it if you want to enable wp-"
1415
  "cache."
1416
  msgstr ""
1417
 
1418
- #: wp-cache.php:1786 wp-cache.php:1952
1419
  msgid "Warning"
1420
  msgstr ""
1421
 
1422
- #: wp-cache.php:1786
1423
  msgid ""
1424
  "GZIP compression is enabled in WordPress, wp-cache will be bypassed until "
1425
  "you disable gzip compression."
1426
  msgstr ""
1427
 
1428
- #: wp-cache.php:1848 wp-cache.php:1853 wp-cache.php:1885 wp-cache.php:1890
1429
- #: wp-cache.php:1896
1430
  msgid "Error"
1431
  msgstr ""
1432
 
1433
- #: wp-cache.php:1848
1434
  msgid ""
1435
  "Your cache directory (<strong>%1$s</strong>) did not exist and couldn&#8217;"
1436
  "t be created by the web server. Check %1$s permissions."
1437
  msgstr ""
1438
 
1439
- #: wp-cache.php:1853
1440
  msgid ""
1441
  "Your cache directory (<strong>%1$s</strong>) or <strong>%2$s</strong> need "
1442
  "to be writable for this plugin to work. Double-check it."
1443
  msgstr ""
1444
 
1445
- #: wp-cache.php:1885
1446
  msgid ""
1447
  "Your WP-Cache config file (<strong>%s</strong>) is out of date and not "
1448
  "writable by the Web server.Please delete it and refresh this page."
1449
  msgstr ""
1450
 
1451
- #: wp-cache.php:1890
1452
  msgid ""
1453
  "Configuration file missing and %1$s directory (<strong>%2$s</strong>) is "
1454
  "not writable by the Web server.Check its permissions."
1455
  msgstr ""
1456
 
1457
- #: wp-cache.php:1896
1458
  msgid ""
1459
  "Sample WP-Cache config file (<strong>%s</strong>) does not exist.Verify you "
1460
  "installation."
1461
  msgstr ""
1462
 
1463
- #: wp-cache.php:1952
1464
  msgid "%s/advanced-cache.php</em> does not exist or cannot be updated."
1465
  msgstr ""
1466
 
1467
- #: wp-cache.php:1953
1468
  msgid "1. If it already exists please delete the file first."
1469
  msgstr ""
1470
 
1471
- #: wp-cache.php:1954
1472
  msgid ""
1473
  "2. Make %1$s writable using the chmod command through your ftp or server "
1474
  "software. (<em>chmod 777 %1$s</em>) and refresh this page. This is only a "
@@ -1476,24 +1735,24 @@ msgid ""
1476
  "again. (Change 777 to 755 in the previous command)"
1477
  msgstr ""
1478
 
1479
- #: wp-cache.php:1955
1480
  msgid "3. Refresh this page to update <em>%s/advanced-cache.php</em>"
1481
  msgstr ""
1482
 
1483
- #: wp-cache.php:1956
1484
  msgid ""
1485
  "If that doesn&#8217;t work, make sure the file <em>%s/advanced-cache.php</"
1486
  "em> doesn&#8217;t exist:"
1487
  msgstr ""
1488
 
1489
- #: wp-cache.php:1957
1490
  msgid ""
1491
  "<li>1. Open <em>%1$s$wp_cache_file</em> in a text editor.</li><li>2. Change "
1492
  "the text <em>CACHEHOME</em> to <em>%2$s</em></li><li>3. Save the file and "
1493
  "copy it to <em>%3$s</em> and refresh this page.</li>"
1494
  msgstr ""
1495
 
1496
- #: wp-cache.php:1980
1497
  msgid ""
1498
  "<h3>WP_CACHE constant set to false</h3><p>The WP_CACHE constant is used by "
1499
  "WordPress to load the code that serves cached pages. Unfortunately it is set "
@@ -1502,308 +1761,298 @@ msgid ""
1502
  "true);</code></p>"
1503
  msgstr ""
1504
 
1505
- #: wp-cache.php:1982
1506
  msgid ""
1507
  "<strong>Error: WP_CACHE is not enabled</strong> in your <code>wp-config.php</"
1508
  "code> file and I couldn&#8217;t modify it."
1509
  msgstr ""
1510
 
1511
- #: wp-cache.php:1983
1512
  msgid ""
1513
  "Edit <code>%s</code> and add the following line:<br /> <code>define"
1514
  "('WP_CACHE', true);</code><br />Otherwise, <strong>WP-Cache will not be "
1515
  "executed</strong> by WordPress core. "
1516
  msgstr ""
1517
 
1518
- #: wp-cache.php:1987
1519
  msgid ""
1520
  "<h3>WP_CACHE constant added to wp-config.php</h3><p>If you continue to see "
1521
  "this warning message please see point 5 of the <a href=\"http://wordpress."
1522
- "org/extend/plugins/wp-super-cache/faq/\">FAQ</a>. The WP_CACHE line must be "
1523
- "moved up."
1524
  msgstr ""
1525
 
1526
- #: wp-cache.php:2015
1527
  msgid "Cache Contents"
1528
  msgstr ""
1529
 
1530
- #: wp-cache.php:2018
1531
  msgid "Object cache in use. No cache listing available."
1532
  msgstr ""
1533
 
1534
- #: wp-cache.php:2042
1535
  msgid "Deleting supercache file: <strong>%s</strong><br />"
1536
  msgstr ""
1537
 
1538
- #: wp-cache.php:2059
1539
  msgid "Deleting wp-cache file: <strong>%s</strong><br />"
1540
  msgstr ""
1541
 
1542
- #: wp-cache.php:2124
1543
  msgid ""
1544
  "Cache stats are not automatically generated. You must click the link below "
1545
  "to regenerate the stats on this page."
1546
  msgstr ""
1547
 
1548
- #: wp-cache.php:2125
1549
  msgid "Regenerate cache stats"
1550
  msgstr ""
1551
 
1552
- #: wp-cache.php:2127
1553
  msgid "Cache stats last generated: %s minutes ago."
1554
  msgstr ""
1555
 
1556
- #: wp-cache.php:2133
1557
  msgid "WP-Cache"
1558
  msgstr ""
1559
 
1560
- #: wp-cache.php:2134 wp-cache.php:2149
1561
  msgid "%s Cached Pages"
1562
  msgstr ""
1563
 
1564
- #: wp-cache.php:2135 wp-cache.php:2154
1565
  msgid "%s Expired Pages"
1566
  msgstr ""
1567
 
1568
- #: wp-cache.php:2148
1569
  msgid "WP-Super-Cache"
1570
  msgstr ""
1571
 
1572
- #: wp-cache.php:2158
1573
  msgid "Fresh WP-Cached Files"
1574
  msgstr ""
1575
 
1576
- #: wp-cache.php:2159 wp-cache.php:2175 wp-cache.php:2191 wp-cache.php:2207
1577
  msgid "URI"
1578
  msgstr ""
1579
 
1580
- #: wp-cache.php:2159 wp-cache.php:2175
1581
  msgid "Key"
1582
  msgstr ""
1583
 
1584
- #: wp-cache.php:2159 wp-cache.php:2175 wp-cache.php:2191 wp-cache.php:2207
1585
  msgid "Age"
1586
  msgstr ""
1587
 
1588
- #: wp-cache.php:2159 wp-cache.php:2175 wp-cache.php:2191 wp-cache.php:2207
1589
  msgid "Delete"
1590
  msgstr ""
1591
 
1592
- #: wp-cache.php:2174
1593
  msgid "Stale WP-Cached Files"
1594
  msgstr ""
1595
 
1596
- #: wp-cache.php:2190
1597
  msgid "Fresh Super Cached Files"
1598
  msgstr ""
1599
 
1600
- #: wp-cache.php:2206
1601
  msgid "Stale Super Cached Files"
1602
  msgstr ""
1603
 
1604
- #: wp-cache.php:2222
1605
  msgid "Hide file list"
1606
  msgstr ""
1607
 
1608
- #: wp-cache.php:2224
1609
  msgid "Too many cached files, no listing possible."
1610
  msgstr ""
1611
 
1612
- #: wp-cache.php:2226
1613
  msgid "List all cached files"
1614
  msgstr ""
1615
 
1616
- #: wp-cache.php:2232
1617
- msgid ""
1618
- "<strong>Garbage Collection</strong><br />Last GC was <strong>%s</strong> "
1619
- "minutes ago<br />"
1620
- msgstr ""
1621
-
1622
- #: wp-cache.php:2233
1623
- msgid "Next GC in <strong>%s</strong> minutes"
1624
- msgstr ""
1625
-
1626
- #: wp-cache.php:2236
1627
  msgid ""
1628
  "Expired files are files older than %s seconds. They are still used by the "
1629
  "plugin and are deleted periodically."
1630
  msgstr ""
1631
 
1632
- #: wp-cache.php:2247
1633
  msgid "Delete Expired"
1634
  msgstr ""
1635
 
1636
- #: wp-cache.php:2272
1637
  msgid "Delete Super Cache cached files (opens in new window)"
1638
  msgstr ""
1639
 
1640
- #: wp-cache.php:2412
1641
  msgid "%1$s is Stephen Fry proof thanks to caching by %2$s"
1642
  msgstr ""
1643
 
1644
- #: wp-cache.php:2445
1645
  msgid ""
1646
  "WP Super Cache must be configured. Go to <a href=\"%s\">the admin page</a> "
1647
  "to enable and configure the plugin."
1648
  msgstr ""
1649
 
1650
- #: wp-cache.php:2451
1651
  msgid "Settings"
1652
  msgstr ""
1653
 
1654
- #: wp-cache.php:2461
1655
  msgid ""
1656
  "WP Super Cache is disabled. Please go to the <a href=\"%s\">plugin admin "
1657
  "page</a> to enable caching."
1658
  msgstr ""
1659
 
1660
- #: wp-cache.php:2464
1661
  msgid ""
1662
  "Warning! WP Super Cache caching broken! The script advanced-cache.php could "
1663
  "not load wp-cache-phase1.php.<br /><br />Please edit %1$s/advanced-cache.php "
1664
  "and make sure the path to %2$swp-cache-phase1.php is correct."
1665
  msgstr ""
1666
 
1667
- #: wp-cache.php:2483
1668
  msgid "[%s] Front page is gzipped! Please clear cache!"
1669
  msgstr ""
1670
 
1671
- #: wp-cache.php:2483
1672
  msgid ""
1673
  "Please visit %s to clear the cache as the front page of your site is now "
1674
  "downloading!"
1675
  msgstr ""
1676
 
1677
- #: wp-cache.php:2486
1678
  msgid "[%s] Front page is gzipped! Cache Cleared!"
1679
  msgstr ""
1680
 
1681
- #: wp-cache.php:2486
1682
  msgid ""
1683
  "The cache on your blog has been cleared because the front page of your site "
1684
  "is now downloading. Please visit %s to verify the cache has been cleared."
1685
  msgstr ""
1686
 
1687
- #: wp-cache.php:2493
1688
  msgid "[%s] Front page is not correct! Please clear cache!"
1689
  msgstr ""
1690
 
1691
- #: wp-cache.php:2493
1692
  msgid ""
1693
  "Please visit %1$s to clear the cache as the front page of your site is not "
1694
  "correct and missing the text, \"%2$s\"!"
1695
  msgstr ""
1696
 
1697
- #: wp-cache.php:2496
1698
  msgid "[%s] Front page is not correct! Cache Cleared!"
1699
  msgstr ""
1700
 
1701
- #: wp-cache.php:2496
1702
  msgid ""
1703
  "The cache on your blog has been cleared because the front page of your site "
1704
  "is missing the text \"%2$s\". Please visit %1$s to verify the cache has been "
1705
  "cleared."
1706
  msgstr ""
1707
 
1708
- #: wp-cache.php:2501
1709
  msgid "[%s] Front page check!"
1710
  msgstr ""
1711
 
1712
- #: wp-cache.php:2501
1713
  msgid ""
1714
  "WP Super Cache has checked the front page of your blog. Please visit %s if "
1715
  "you would like to disable this."
1716
  msgstr ""
1717
 
1718
- #: wp-cache.php:2544
1719
  msgid "Cannot update .htaccess"
1720
  msgstr ""
1721
 
1722
- #: wp-cache.php:2544
1723
  msgid ""
1724
  "The file <code>%s.htaccess</code> cannot be modified by the web server. "
1725
  "Please correct this using the chmod command or your ftp client."
1726
  msgstr ""
1727
 
1728
- #: wp-cache.php:2544
1729
  msgid "Refresh this page when the file permissions have been modified."
1730
  msgstr ""
1731
 
1732
- #: wp-cache.php:2544
1733
  msgid ""
1734
  "Alternatively, you can edit your <code>%s.htaccess</code> file manually and "
1735
  "add the following code (before any WordPress rules):"
1736
  msgstr ""
1737
 
1738
- #: wp-cache.php:2548
1739
  msgid ""
1740
  "To serve static html files your server must have the correct mod_rewrite "
1741
  "rules added to a file called <code>%s.htaccess</code>"
1742
  msgstr ""
1743
 
1744
- #: wp-cache.php:2549
1745
  msgid "You can edit the file yourself add the following rules."
1746
  msgstr ""
1747
 
1748
- #: wp-cache.php:2550
1749
  msgid " Make sure they appear before any existing WordPress rules. "
1750
  msgstr ""
1751
 
1752
- #: wp-cache.php:2558
1753
  msgid "Update Mod_Rewrite Rules"
1754
  msgstr ""
1755
 
1756
- #: wp-cache.php:2692
1757
  msgid "[%1$s] Cache Preload Started"
1758
  msgstr ""
1759
 
1760
- #: wp-cache.php:2720
1761
  msgid "[%1$s] Refreshing %2$s taxonomy from %3$d to %4$d"
1762
  msgstr ""
1763
 
1764
- #: wp-cache.php:2755
1765
  msgid "[%1$s] Refreshing posts from %2$d to %3$d"
1766
  msgstr ""
1767
 
1768
- #: wp-cache.php:2773
1769
  msgid "[%1$s] Cache Preload Stopped"
1770
  msgstr ""
1771
 
1772
- #: wp-cache.php:2782
1773
  msgid "[%1$s] %2$d posts refreshed"
1774
  msgstr ""
1775
 
1776
- #: wp-cache.php:2782
1777
  msgid "Refreshed the following posts:"
1778
  msgstr ""
1779
 
1780
- #: wp-cache.php:2791
1781
  msgid "Scheduling next preload refresh in %d minutes."
1782
  msgstr ""
1783
 
1784
- #: wp-cache.php:2801
1785
  msgid "[%s] Cache Preload Completed"
1786
  msgstr ""
1787
 
1788
- #: wp-cache.php:2801
1789
  msgid "Cleaning up old supercache files."
1790
  msgstr ""
1791
 
1792
- #: wp-cache.php:2843
1793
  msgid "[%s] Preload may have stalled."
1794
  msgstr ""
1795
 
1796
- #: wp-cache.php:2843
1797
  msgid ""
1798
  "Preload has been restarted.\n"
1799
  "%s"
1800
  msgstr ""
1801
 
1802
- #: wp-cache.php:2886
1803
  msgid "Supercache Uninstall Problems"
1804
  msgstr ""
1805
 
1806
- #: wp-cache.php:2886
1807
  msgid ""
1808
  "Dear User,\n"
1809
  "\n"
@@ -1821,182 +2070,6 @@ msgid ""
1821
  "http://wordpress.org/extend/plugins/wp-super-cache/"
1822
  msgstr ""
1823
 
1824
- #: ossdl-cdn.php:149
1825
- msgid ""
1826
- "Your website probably uses lots of static files. Image, Javascript and CSS "
1827
- "files are usually static files that could just as easily be served from "
1828
- "another site or CDN. Therefore this plugin replaces any links in the "
1829
- "<code>wp-content</code> and <code>wp-includes</code> directories (except for "
1830
- "PHP files) on your site with the URL you provide below. That way you can "
1831
- "either copy all the static content to a dedicated host or mirror the files "
1832
- "to a CDN by <a href=\"http://knowledgelayer.softlayer.com/questions/365/How"
1833
- "+does+Origin+Pull+work%3F\" target=\"_blank\">origin pull</a>."
1834
- msgstr ""
1835
-
1836
- #: ossdl-cdn.php:151
1837
- msgid ""
1838
- "<strong style=\"color: red\">WARNING:</strong> Test some static urls e.g., %"
1839
- "s to ensure your CDN service is fully working before saving changes."
1840
- msgstr ""
1841
-
1842
- #: ossdl-cdn.php:152
1843
- msgid "You can define different CDN URLs for each site on a multsite network."
1844
- msgstr ""
1845
-
1846
- #: ossdl-cdn.php:160
1847
- msgid "Enable CDN Support"
1848
- msgstr ""
1849
-
1850
- #: ossdl-cdn.php:163
1851
- msgid "Off-site URL"
1852
- msgstr ""
1853
-
1854
- #: ossdl-cdn.php:166
1855
- msgid ""
1856
- "The new URL to be used in place of %1$s for rewriting. No trailing <code>/</"
1857
- "code> please.<br />Example: <code>%2$s</code>."
1858
- msgstr ""
1859
-
1860
- #: ossdl-cdn.php:170
1861
- msgid "Include directories"
1862
- msgstr ""
1863
-
1864
- #: ossdl-cdn.php:173
1865
- msgid ""
1866
- "Directories to include in static file matching. Use a comma as the "
1867
- "delimiter. Default is <code>wp-content, wp-includes</code>, which will be "
1868
- "enforced if this field is left empty."
1869
- msgstr ""
1870
-
1871
- #: ossdl-cdn.php:177
1872
- msgid "Exclude if substring"
1873
- msgstr ""
1874
-
1875
- #: ossdl-cdn.php:180
1876
- msgid ""
1877
- "Excludes something from being rewritten if one of the above strings is found "
1878
- "in the match. Use a comma as the delimiter like this, <code>.php, .flv, .do</"
1879
- "code>, and always include <code>.php</code> (default)."
1880
- msgstr ""
1881
-
1882
- #: ossdl-cdn.php:184
1883
- msgid "Additional CNAMES"
1884
- msgstr ""
1885
-
1886
- #: ossdl-cdn.php:187
1887
- msgid ""
1888
- "These <a href=\"http://en.wikipedia.org/wiki/CNAME_record\">CNAMES</a> will "
1889
- "be used in place of %1$s for rewriting (in addition to the off-site URL "
1890
- "above). Use a comma as the delimiter. For pages with a large number of "
1891
- "static files, this can improve browser performance. CNAMEs may also need to "
1892
- "be configured on your CDN.<br />Example: %2$s"
1893
- msgstr ""
1894
-
1895
- #: ossdl-cdn.php:191
1896
- msgid "Skip https URLs to avoid \"mixed content\" errors"
1897
- msgstr ""
1898
-
1899
- #: ossdl-cdn.php:195
1900
- msgid "Save Changes"
1901
- msgstr ""
1902
-
1903
- #: ossdl-cdn.php:197
1904
- msgid ""
1905
- "CDN functionality provided by <a href=\"http://wordpress.org/extend/plugins/"
1906
- "ossdl-cdn-off-linker/\">OSSDL CDN Off Linker</a> by <a href=\"http://mark."
1907
- "ossdl.de/\">Mark Kubacki</a>"
1908
- msgstr ""
1909
-
1910
- #: plugins/awaitingmoderation.php:4
1911
- msgid "Your comment is awaiting moderation."
1912
- msgstr ""
1913
-
1914
- #: plugins/awaitingmoderation.php:32
1915
- msgid "Awaiting Moderation"
1916
- msgstr ""
1917
-
1918
- #: plugins/awaitingmoderation.php:36
1919
- msgid ""
1920
- "Enables or disables plugin to Remove the text \"Your comment is awaiting "
1921
- "moderation.\" when someone leaves a moderated comment."
1922
- msgstr ""
1923
-
1924
- #: plugins/awaitingmoderation.php:42 plugins/searchengine.php:67
1925
- #: plugins/domain-mapping.php:68 plugins/badbehaviour.php:73
1926
- msgid "disabled"
1927
- msgstr ""
1928
-
1929
- #: plugins/awaitingmoderation.php:43
1930
- msgid "Awaiting Moderation is now %s"
1931
- msgstr ""
1932
-
1933
- #: plugins/awaitingmoderation.php:45 plugins/domain-mapping.php:71
1934
- #: plugins/badbehaviour.php:76
1935
- msgid "Update"
1936
- msgstr ""
1937
-
1938
- #: plugins/searchengine.php:71
1939
- msgid ""
1940
- "<a href=\"http://ocaoimh.ie/no-adverts-for-friends/\">No Adverts for "
1941
- "Friends</a> plugin is %s."
1942
- msgstr ""
1943
-
1944
- #: plugins/searchengine.php:72
1945
- msgid ""
1946
- "(requires <a href=\"http://ocaoimh.ie/no-adverts-for-friends/"
1947
- "\">friendsadverts.php</a> too) "
1948
- msgstr ""
1949
-
1950
- #: plugins/domain-mapping.php:58
1951
- msgid "Domain Mapping"
1952
- msgstr ""
1953
-
1954
- #: plugins/domain-mapping.php:63
1955
- msgid ""
1956
- "Provides support for <a href=\"http://wordpress.org/extend/plugins/wordpress-"
1957
- "mu-domain-mapping/\">Domain Mapping</a> plugin to map multiple domains to a "
1958
- "blog."
1959
- msgstr ""
1960
-
1961
- #: plugins/domain-mapping.php:69
1962
- msgid "Domain Mapping support is now %s"
1963
- msgstr ""
1964
-
1965
- #: plugins/domain-mapping.php:83
1966
- msgid ""
1967
- "Domain Mapping plugin detected! Please go to the Supercache plugins page and "
1968
- "enable the domain mapping helper plugin."
1969
- msgstr ""
1970
-
1971
- #: plugins/badbehaviour.php:47
1972
- msgid "Bad Behaviour not found. Please check your install."
1973
- msgstr ""
1974
-
1975
- #: plugins/badbehaviour.php:63
1976
- msgid "Bad Behavior"
1977
- msgstr ""
1978
-
1979
- #: plugins/badbehaviour.php:68
1980
- msgid ""
1981
- "(Only legacy caching supported, disabled compression and requires <a href="
1982
- "\"http://www.bad-behavior.ioerror.us/\">Bad Behavior</a> in \"%s/plugins/bad-"
1983
- "behavior/\") "
1984
- msgstr ""
1985
-
1986
- #: plugins/badbehaviour.php:74
1987
- msgid "Bad Behavior support is now %s"
1988
- msgstr ""
1989
-
1990
- #: wp-cache-phase2.php:1093
1991
- msgid "Cache expiry cron job failed. Job will run again in 10 seconds."
1992
- msgstr ""
1993
-
1994
- #: wp-cache-phase2.php:1097
1995
- msgid ""
1996
- "Cache expiry cron job took more than 30 seconds. You should probably run the "
1997
- "garbage collector more often."
1998
- msgstr ""
1999
-
2000
- #: wp-cache-phase2.php:1106
2001
- msgid "[%1$s] WP Super Cache GC Report"
2002
  msgstr ""
1
+ # Copyright (C) 2012
2
  # This file is distributed under the same license as the package.
3
  msgid ""
4
  msgstr ""
5
  "Project-Id-Version: \n"
6
  "Report-Msgid-Bugs-To: http://wordpress.org/tag/wp-super-cache\n"
7
+ "POT-Creation-Date: 2012-05-23 10:16:26+00:00\n"
8
  "MIME-Version: 1.0\n"
9
  "Content-Type: text/plain; charset=UTF-8\n"
10
  "Content-Transfer-Encoding: 8bit\n"
11
+ "PO-Revision-Date: 2012-MO-DA HO:MI+ZONE\n"
12
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13
  "Language-Team: LANGUAGE <LL@li.org>\n"
14
 
15
+ #: ossdl-cdn.php:151
16
+ msgid ""
17
+ "Your website probably uses lots of static files. Image, Javascript and CSS "
18
+ "files are usually static files that could just as easily be served from "
19
+ "another site or CDN. Therefore this plugin replaces any links in the "
20
+ "<code>wp-content</code> and <code>wp-includes</code> directories (except for "
21
+ "PHP files) on your site with the URL you provide below. That way you can "
22
+ "either copy all the static content to a dedicated host or mirror the files "
23
+ "to a CDN by <a href=\"http://knowledgelayer.softlayer.com/questions/365/How"
24
+ "+does+Origin+Pull+work%3F\" target=\"_blank\">origin pull</a>."
25
+ msgstr ""
26
+
27
+ #: ossdl-cdn.php:152 wp-cache.php:1064
28
+ msgid ""
29
+ "The <a href=\"%1$s\">CDN Sync Tool</a> plugin will help upload files to "
30
+ "Amazon S3/Cloudfront if you would rather not depend on origin pull. See the "
31
+ "<a href=\"%2$s\">plugin support forum</a> if you have any queries about this "
32
+ "plugin."
33
+ msgstr ""
34
+
35
+ #: ossdl-cdn.php:153
36
+ msgid ""
37
+ "<strong style=\"color: red\">WARNING:</strong> Test some static urls e.g., "
38
+ "%s to ensure your CDN service is fully working before saving changes."
39
+ msgstr ""
40
+
41
+ #: ossdl-cdn.php:154
42
+ msgid "You can define different CDN URLs for each site on a multsite network."
43
+ msgstr ""
44
+
45
+ #: ossdl-cdn.php:162
46
+ msgid "Enable CDN Support"
47
+ msgstr ""
48
+
49
+ #: ossdl-cdn.php:165
50
+ msgid "Off-site URL"
51
+ msgstr ""
52
+
53
+ #: ossdl-cdn.php:168
54
+ msgid ""
55
+ "The new URL to be used in place of %1$s for rewriting. No trailing <code>/</"
56
+ "code> please.<br />Example: <code>%2$s</code>."
57
+ msgstr ""
58
+
59
+ #: ossdl-cdn.php:172
60
+ msgid "Include directories"
61
+ msgstr ""
62
+
63
+ #: ossdl-cdn.php:175
64
+ msgid ""
65
+ "Directories to include in static file matching. Use a comma as the "
66
+ "delimiter. Default is <code>wp-content, wp-includes</code>, which will be "
67
+ "enforced if this field is left empty."
68
+ msgstr ""
69
+
70
+ #: ossdl-cdn.php:179
71
+ msgid "Exclude if substring"
72
+ msgstr ""
73
+
74
+ #: ossdl-cdn.php:182
75
+ msgid ""
76
+ "Excludes something from being rewritten if one of the above strings is found "
77
+ "in the match. Use a comma as the delimiter like this, <code>.php, .flv, .do</"
78
+ "code>, and always include <code>.php</code> (default)."
79
+ msgstr ""
80
+
81
+ #: ossdl-cdn.php:186
82
+ msgid "Additional CNAMES"
83
+ msgstr ""
84
+
85
+ #: ossdl-cdn.php:189
86
+ msgid ""
87
+ "These <a href=\"http://en.wikipedia.org/wiki/CNAME_record\">CNAMES</a> will "
88
+ "be used in place of %1$s for rewriting (in addition to the off-site URL "
89
+ "above). Use a comma as the delimiter. For pages with a large number of "
90
+ "static files, this can improve browser performance. CNAMEs may also need to "
91
+ "be configured on your CDN.<br />Example: %2$s"
92
+ msgstr ""
93
+
94
+ #: ossdl-cdn.php:193
95
+ msgid "Skip https URLs to avoid \"mixed content\" errors"
96
+ msgstr ""
97
+
98
+ #: ossdl-cdn.php:197
99
+ msgid "Save Changes"
100
+ msgstr ""
101
+
102
+ #: ossdl-cdn.php:199
103
+ msgid ""
104
+ "CDN functionality provided by <a href=\"http://wordpress.org/extend/plugins/"
105
+ "ossdl-cdn-off-linker/\">OSSDL CDN Off Linker</a> by <a href=\"http://mark."
106
+ "ossdl.de/\">Mark Kubacki</a>"
107
+ msgstr ""
108
+
109
+ #: plugins/awaitingmoderation.php:4
110
+ msgid "Your comment is awaiting moderation."
111
+ msgstr ""
112
+
113
+ #: plugins/awaitingmoderation.php:32
114
+ msgid "Awaiting Moderation"
115
+ msgstr ""
116
+
117
+ #: plugins/awaitingmoderation.php:34 plugins/badbehaviour.php:65
118
+ #: plugins/domain-mapping.php:75 plugins/searchengine.php:69
119
+ #: plugins/wptouch.php:22 wp-cache.php:1303
120
+ msgid "Enabled"
121
+ msgstr ""
122
+
123
+ #: plugins/awaitingmoderation.php:35 plugins/badbehaviour.php:66
124
+ #: plugins/domain-mapping.php:76 plugins/searchengine.php:70
125
+ #: plugins/wptouch.php:23 wp-cache.php:1303
126
+ msgid "Disabled"
127
+ msgstr ""
128
+
129
+ #: plugins/awaitingmoderation.php:36
130
+ msgid ""
131
+ "Enables or disables plugin to Remove the text \"Your comment is awaiting "
132
+ "moderation.\" when someone leaves a moderated comment."
133
+ msgstr ""
134
+
135
+ #: plugins/awaitingmoderation.php:40 plugins/badbehaviour.php:71
136
+ #: plugins/domain-mapping.php:81 plugins/searchengine.php:75
137
+ #: plugins/wptouch.php:28 wp-cache.php:1758
138
+ msgid "enabled"
139
+ msgstr ""
140
+
141
+ #: plugins/awaitingmoderation.php:42 plugins/badbehaviour.php:73
142
+ #: plugins/domain-mapping.php:83 plugins/searchengine.php:77
143
+ #: plugins/wptouch.php:30
144
+ msgid "disabled"
145
+ msgstr ""
146
+
147
+ #: plugins/awaitingmoderation.php:43
148
+ msgid "Awaiting Moderation is now %s"
149
+ msgstr ""
150
+
151
+ #: plugins/awaitingmoderation.php:45 plugins/badbehaviour.php:76
152
+ #: plugins/domain-mapping.php:86 plugins/searchengine.php:80
153
+ #: plugins/wptouch.php:33
154
+ msgid "Update"
155
+ msgstr ""
156
+
157
+ #: plugins/badbehaviour.php:47
158
+ msgid "Bad Behaviour not found. Please check your install."
159
+ msgstr ""
160
+
161
+ #: plugins/badbehaviour.php:63
162
+ msgid "Bad Behavior"
163
+ msgstr ""
164
+
165
+ #: plugins/badbehaviour.php:68
166
+ msgid ""
167
+ "(Only legacy caching supported, disabled compression and requires <a href="
168
+ "\"http://www.bad-behavior.ioerror.us/\">Bad Behavior</a> in \"%s/plugins/bad-"
169
+ "behavior/\") "
170
+ msgstr ""
171
+
172
+ #: plugins/badbehaviour.php:74
173
+ msgid "Bad Behavior support is now %s"
174
+ msgstr ""
175
+
176
+ #: plugins/badbehaviour.php:83 wp-cache.php:1393 wp-cache.php:1398
177
+ msgid "Warning!"
178
+ msgstr ""
179
+
180
+ #: plugins/domain-mapping.php:73
181
+ msgid "Domain Mapping"
182
+ msgstr ""
183
+
184
+ #: plugins/domain-mapping.php:78
185
+ msgid ""
186
+ "Provides support for <a href=\"http://wordpress.org/extend/plugins/wordpress-"
187
+ "mu-domain-mapping/\">Domain Mapping</a> plugin to map multiple domains to a "
188
+ "blog."
189
+ msgstr ""
190
+
191
+ #: plugins/domain-mapping.php:84
192
+ msgid "Domain Mapping support is now %s"
193
+ msgstr ""
194
+
195
+ #: plugins/domain-mapping.php:98
196
+ msgid ""
197
+ "Domain Mapping plugin detected! Please go to the Supercache plugins page and "
198
+ "enable the domain mapping helper plugin."
199
+ msgstr ""
200
+
201
+ #: plugins/multisite.php:13
202
+ msgid "Cached"
203
+ msgstr ""
204
+
205
+ #: plugins/multisite.php:31 wp-cache.php:1316
206
+ msgid "Enable"
207
+ msgstr ""
208
+
209
+ #: plugins/multisite.php:33 plugins/searchengine.php:61 wp-cache.php:1316
210
+ msgid "Disable"
211
+ msgstr ""
212
+
213
+ #: plugins/multisite.php:39
214
+ msgid "Caching has been disabled on this blog on the Network Admin Sites page."
215
+ msgstr ""
216
+
217
+ #: plugins/searchengine.php:67
218
+ msgid "No Adverts for Friends"
219
+ msgstr ""
220
+
221
+ #: plugins/searchengine.php:72
222
+ msgid ""
223
+ "Provides support for <a href=\"http://ocaoimh.ie/no-adverts-for-friends/"
224
+ "\">No Adverts for Friends</a>."
225
+ msgstr ""
226
+
227
+ #: plugins/searchengine.php:78
228
+ msgid "No Adverts for Friends support is now %s"
229
+ msgstr ""
230
+
231
+ #: plugins/wptouch.php:20
232
+ msgid "WPTouch"
233
+ msgstr ""
234
+
235
+ #: plugins/wptouch.php:25
236
+ msgid ""
237
+ "Provides support for <a href=\"http://wordpress.org/extend/plugins/wptouch/"
238
+ "\">WPTouch</a> mobile theme and plugin."
239
+ msgstr ""
240
+
241
+ #: plugins/wptouch.php:31
242
+ msgid "WPTouch support is now %s"
243
+ msgstr ""
244
+
245
+ #: plugins/wptouch.php:45
246
+ msgid ""
247
+ "WPTouch plugin detected! Please go to the Supercache plugins page and enable "
248
+ "the WPTouch helper plugin."
249
+ msgstr ""
250
+
251
+ #: wp-cache-phase2.php:1180
252
+ msgid "Cache expiry cron job failed. Job will run again in 10 seconds."
253
+ msgstr ""
254
+
255
+ #: wp-cache-phase2.php:1184
256
+ msgid ""
257
+ "Cache expiry cron job took more than 30 seconds. You should probably run the "
258
+ "garbage collector more often."
259
+ msgstr ""
260
+
261
+ #: wp-cache-phase2.php:1193
262
+ msgid "[%1$s] WP Super Cache GC Report"
263
+ msgstr ""
264
+
265
  #: wp-cache.php:99
266
  msgid ""
267
  "Please create %s /wp-cache-config.php from wp-super-cache/wp-cache-config-"
364
  "static files. You will still be able to use legacy or PHP modes."
365
  msgstr ""
366
 
367
+ #: wp-cache.php:240
368
  msgid "Read Only Mode. Configuration cannot be changed."
369
  msgstr ""
370
 
371
+ #: wp-cache.php:241
372
  msgid ""
373
  "The WP Super Cache configuration file is <code>%s/wp-cache-config.php</code> "
374
  "and cannot be modified. That file must be writeable by the webserver to make "
375
  "any changes."
376
  msgstr ""
377
 
378
+ #: wp-cache.php:242
379
  msgid ""
380
  "A simple way of doing that is by changing the permissions temporarily using "
381
  "the CHMOD command or through your ftp client. Make sure it&#8217;s globally "
382
  "writeable and it should be fine."
383
  msgstr ""
384
 
385
+ #: wp-cache.php:243 wp-cache.php:259
386
  msgid ""
387
  "<a href=\"http://codex.wordpress.org/Changing_File_Permissions\">This page</"
388
  "a> explains how to change file permissions."
389
  msgstr ""
390
 
391
+ #: wp-cache.php:244
392
  msgid "Writeable:"
393
  msgstr ""
394
 
395
+ #: wp-cache.php:245
396
  msgid "Readonly:"
397
  msgstr ""
398
 
399
+ #: wp-cache.php:257
400
  msgid "Warning! %s is writeable!"
401
  msgstr ""
402
 
403
+ #: wp-cache.php:258
404
  msgid ""
405
  "You should change the permissions on %s and make it more restrictive. Use "
406
  "your ftp client, or the following command to fix things:"
407
  msgstr ""
408
 
409
+ #: wp-cache.php:268
410
  msgid "Mobile rewrite rules detected"
411
  msgstr ""
412
 
413
+ #: wp-cache.php:269
414
  msgid ""
415
  "For best performance you should enable \"Mobile device support\" or delete "
416
  "the mobile rewrite rules in your .htaccess. Look for the 2 lines with the "
417
  "text \"2.0\\ MMP|240x320\" and delete those."
418
  msgstr ""
419
 
420
+ #: wp-cache.php:269
421
  msgid ""
422
  "This will have no affect on ordinary users but mobile users will see "
423
  "uncached pages."
424
  msgstr ""
425
 
426
+ #: wp-cache.php:275 wp-cache.php:286
427
  msgid "Rewrite rules must be updated"
428
  msgstr ""
429
 
430
+ #: wp-cache.php:276 wp-cache.php:287
431
  msgid "The rewrite rules required by this plugin have changed or are missing. "
432
  msgstr ""
433
 
434
+ #: wp-cache.php:277
435
  msgid ""
436
  "Mobile support requires extra rules in your .htaccess file, or you can set "
437
  "the plugin to legacy mode. Here are your options (in order of difficulty):"
438
  msgstr ""
439
 
440
+ #: wp-cache.php:278
441
  msgid "Set the plugin to legacy mode and enable mobile support."
442
  msgstr ""
443
 
444
+ #: wp-cache.php:279 wp-cache.php:288
445
  msgid ""
446
  "Scroll down the Advanced Settings page and click the <strong>Update "
447
  "Mod_Rewrite Rules</strong> button."
448
  msgstr ""
449
 
450
+ #: wp-cache.php:280
451
  msgid ""
452
  "Delete the plugin mod_rewrite rules in %s.htaccess enclosed by <code># BEGIN "
453
  "WPSuperCache</code> and <code># END WPSuperCache</code> and let the plugin "
454
  "regenerate them by reloading this page."
455
  msgstr ""
456
 
457
+ #: wp-cache.php:281
458
  msgid ""
459
  "Add the rules yourself. Edit %s.htaccess and find the block of code enclosed "
460
  "by the lines <code># BEGIN WPSuperCache</code> and <code># END WPSuperCache</"
463
  "*$</code> add these lines: (do it twice, once for each section)"
464
  msgstr ""
465
 
466
+ #: wp-cache.php:294
467
  msgid "Required to serve compressed supercache files properly."
468
  msgstr ""
469
 
470
+ #: wp-cache.php:294
471
  msgid ""
472
  "Required to set caching information on supercache pages. IE7 users will see "
473
  "old pages without this module."
474
  msgstr ""
475
 
476
+ #: wp-cache.php:294
477
  msgid ""
478
  "Set the expiry date on supercached pages. Visitors may not see new pages "
479
  "when they refresh or leave comments without this module."
480
  msgstr ""
481
 
482
+ #: wp-cache.php:301
483
  msgid "Missing Apache Modules"
484
  msgstr ""
485
 
486
+ #: wp-cache.php:302
487
  msgid ""
488
  "The following Apache modules are missing. The plugin will work in legacy "
489
  "mode without them. In full Supercache mode, your visitors may see corrupted "
490
  "pages or out of date content however."
491
  msgstr ""
492
 
493
+ #: wp-cache.php:499
494
  msgid ""
495
  "<strong>Warning!</strong> You attempted to enable compression but <code>zlib."
496
  "output_compression</code> is enabled. See #21 in the Troubleshooting section "
497
  "of the readme file."
498
  msgstr ""
499
 
500
+ #: wp-cache.php:594
501
  msgid "WP Super Cache Settings"
502
  msgstr ""
503
 
504
+ #: wp-cache.php:605
505
  msgid ""
506
  "Notice: <em>Mod_rewrite or Legacy caching enabled</em>. Showing Advanced "
507
  "Settings Page by default."
508
  msgstr ""
509
 
510
+ #: wp-cache.php:616
511
  msgid ""
512
  "Configuration file changed, some values might be wrong. Load the page again "
513
  "from the \"Settings\" menu to reset them."
514
  msgstr ""
515
 
516
+ #: wp-cache.php:648
517
  msgid "Caching must be enabled to use this feature"
518
  msgstr ""
519
 
520
+ #: wp-cache.php:666 wp-cache.php:806
521
  msgid "Cancel Cache Preload"
522
  msgstr ""
523
 
524
+ #: wp-cache.php:674
525
  msgid ""
526
  "Scheduled preloading of cache almost cancelled. It may take up to a minute "
527
  "for it to cancel completely."
528
  msgstr ""
529
 
530
+ #: wp-cache.php:685
531
  msgid "Scheduled preloading of cache cancelled."
532
  msgstr ""
533
 
534
+ #: wp-cache.php:717 wp-cache.php:804
535
  msgid "Preload Cache Now"
536
  msgstr ""
537
 
538
+ #: wp-cache.php:721
539
  msgid "Scheduled preloading of cache in 10 seconds."
540
  msgstr ""
541
 
542
+ #: wp-cache.php:726
543
  msgid "Scheduled preloading of cache in %d minutes"
544
  msgstr ""
545
 
546
+ #: wp-cache.php:730
547
  msgid ""
548
  "This will cache every published post and page on your site. It will create "
549
  "supercache static files so unknown visitors (including bots) will hit a "
551
  "speed as a metric when judging websites now."
552
  msgstr ""
553
 
554
+ #: wp-cache.php:731
555
  msgid ""
556
  "Preloading creates lots of files however. Caching is done from the newest "
557
  "post to the oldest so please consider only caching the newest if you have "
558
  "lots (10,000+) of posts. This is especially important on shared hosting."
559
  msgstr ""
560
 
561
+ #: wp-cache.php:732
562
  msgid ""
563
  "In &#8217;Preload Mode&#8217; regular garbage collection will only clean out "
564
  "old legacy files for known users, not the preloaded supercache files. This "
565
  "is a recommended setting when the cache is preloaded."
566
  msgstr ""
567
 
568
+ #: wp-cache.php:736
569
  msgid ""
570
  "Refresh preloaded cache files every %s minutes. (0 to disable, minimum %d "
571
  "minutes.)"
572
  msgstr ""
573
 
574
+ #: wp-cache.php:749
575
  msgid "all"
576
  msgstr ""
577
 
578
+ #: wp-cache.php:762
579
  msgid "Preload %s posts."
580
  msgstr ""
581
 
582
+ #: wp-cache.php:769
583
  msgid ""
584
  "Preload mode (garbage collection only on legacy cache files. Recommended.)"
585
  msgstr ""
586
 
587
+ #: wp-cache.php:772
588
+ msgid "Preload tags, categories and other taxonomies."
589
+ msgstr ""
590
+
591
+ #: wp-cache.php:775
592
  msgid "Send me status emails when files are refreshed."
593
  msgstr ""
594
 
595
+ #: wp-cache.php:780
596
  msgid "Many emails, 2 emails per 100 posts."
597
  msgstr ""
598
 
599
+ #: wp-cache.php:783
600
  msgid "Medium, 1 email per 100 posts."
601
  msgstr ""
602
 
603
+ #: wp-cache.php:786
604
  msgid "Less emails, 1 at the start and 1 at the end of preloading all posts."
605
  msgstr ""
606
 
607
+ #: wp-cache.php:790
608
  msgid "Refresh of cache in %d hours %d minutes and %d seconds."
609
  msgstr ""
610
 
611
+ #: wp-cache.php:791
612
  msgid "Full refresh of cache in %d hours %d minutes and %d seconds."
613
  msgstr ""
614
 
615
+ #: wp-cache.php:797
616
  msgid "Currently caching from post %d to %d."
617
  msgstr ""
618
 
619
+ #: wp-cache.php:801
620
  msgid "<strong>Page last cached:</strong> %s"
621
  msgstr ""
622
 
623
+ #: wp-cache.php:804
624
  msgid "Update Settings"
625
  msgstr ""
626
 
627
+ #: wp-cache.php:812
628
  msgid ""
629
  "Preloading of cache disabled. Please disable legacy page caching or talk to "
630
  "your host administrator."
631
  msgstr ""
632
 
633
+ #: wp-cache.php:829 wp-cache.php:940
634
  msgid "Caching"
635
  msgstr ""
636
 
637
+ #: wp-cache.php:833
638
  msgid "Cache hits to this website for quick access."
639
  msgstr ""
640
 
641
+ #: wp-cache.php:833 wp-cache.php:834 wp-cache.php:851 wp-cache.php:860
642
+ #: wp-cache.php:867 wp-cache.php:870 wp-cache.php:887 wp-cache.php:943
643
  msgid "Recommended"
644
  msgstr ""
645
 
646
+ #: wp-cache.php:834
647
  msgid "Use mod_rewrite to serve cache files."
648
  msgstr ""
649
 
650
+ #: wp-cache.php:835
651
  msgid "Use PHP to serve cache files."
652
  msgstr ""
653
 
654
+ #: wp-cache.php:836
655
  msgid "Legacy page caching."
656
  msgstr ""
657
 
658
+ #: wp-cache.php:837
659
  msgid ""
660
  "Mod_rewrite is fastest, PHP is almost as fast and easier to get working, "
661
  "while legacy caching is slower again, but more flexible and also easy to get "
662
  "working. New users should use PHP caching."
663
  msgstr ""
664
 
665
+ #: wp-cache.php:843
666
  msgid "Miscellaneous"
667
  msgstr ""
668
 
669
+ #: wp-cache.php:849
670
  msgid "Warning! Compression is disabled as gzencode() function not found."
671
  msgstr ""
672
 
673
+ #: wp-cache.php:851
674
  msgid "Compress pages so they&#8217;re served more quickly to visitors."
675
  msgstr ""
676
 
677
+ #: wp-cache.php:852
678
  msgid ""
679
  "Compression is disabled by default because some hosts have problems with "
680
  "compressed files. Switching it on and off clears the cache."
681
  msgstr ""
682
 
683
+ #: wp-cache.php:860
684
  msgid ""
685
  "304 Not Modified browser caching. Indicate when a page has not been modified "
686
  "since last requested."
687
  msgstr ""
688
 
689
+ #: wp-cache.php:863
690
+ msgid ""
691
+ "Warning! 304 browser caching is only supported when not using mod_rewrite "
692
+ "caching."
693
+ msgstr ""
694
+
695
+ #: wp-cache.php:865
696
  msgid ""
697
  "304 support is disabled by default because in the past GoDaddy had problems "
698
  "with some of the headers used."
699
  msgstr ""
700
 
701
+ #: wp-cache.php:867
702
  msgid ""
703
  "Don&#8217;t cache pages for <acronym title=\"Logged in users and those that "
704
  "comment\">known users</acronym>."
705
  msgstr ""
706
 
707
+ #: wp-cache.php:868
708
+ msgid "Don&#8217;t cache pages with GET parameters. (?x=y at the end of a url)"
709
+ msgstr ""
710
+
711
+ #: wp-cache.php:869
712
  msgid ""
713
  "Make known users anonymous so they&#8217;re served supercached static files."
714
  msgstr ""
715
 
716
+ #: wp-cache.php:870
717
  msgid ""
718
  "Cache rebuild. Serve a supercache file to anonymous users while a new file "
719
  "is being generated."
720
  msgstr ""
721
 
722
+ #: wp-cache.php:871
723
  msgid ""
724
  "Proudly tell the world your server is <a href=\"%s\">Stephen Fry proof</a>! "
725
  "(places a message in your blog&#8217;s footer)"
726
  msgstr ""
727
 
728
+ #: wp-cache.php:877 wp-cache.php:1154 wp-cache.php:1762
729
  msgid "Advanced"
730
  msgstr ""
731
 
732
+ #: wp-cache.php:881
733
  msgid ""
734
  "Mobile device support. (External plugin or theme required. See the <a href="
735
  "\"http://wordpress.org/extend/plugins/wp-super-cache/faq/\">FAQ</a> for "
736
  "further details.)"
737
  msgstr ""
738
 
739
+ #: wp-cache.php:883
740
+ msgid "Mobile Browsers"
741
+ msgstr ""
742
+
743
+ #: wp-cache.php:883
744
+ msgid "Mobile Prefixes"
745
+ msgstr ""
746
+
747
+ #: wp-cache.php:885
748
+ msgid ""
749
+ "Remove UTF8/blog charset support from .htaccess file. Only necessary if you "
750
+ "see odd characters or punctuation looks incorrect. Requires rewrite rules "
751
+ "update."
752
+ msgstr ""
753
+
754
+ #: wp-cache.php:886
755
  msgid "Clear all cache files when a post or page is published or updated."
756
  msgstr ""
757
 
758
+ #: wp-cache.php:887
759
  msgid "Extra homepage checks. (Very occasionally stops homepage caching)"
760
  msgstr ""
761
 
762
+ #: wp-cache.php:888
763
  msgid "Only refresh current page when comments made."
764
  msgstr ""
765
 
766
+ #: wp-cache.php:889
767
  msgid "List the newest cached pages on this page."
768
  msgstr ""
769
 
770
+ #: wp-cache.php:891
771
  msgid ""
772
  "Coarse file locking. You probably don&#8217;t need this but it may help if "
773
  "your server is underpowered. Warning! <em>May cause your server to lock up "
774
  "in very rare cases!</em>"
775
  msgstr ""
776
 
777
+ #: wp-cache.php:893
778
  msgid ""
779
  "Late init. Display cached files after WordPress has loaded. Most useful in "
780
  "legacy mode."
781
  msgstr ""
782
 
783
+ #: wp-cache.php:895
784
  msgid "Use object cache to store cached files."
785
  msgstr ""
786
 
787
+ #: wp-cache.php:895
788
  msgid "(Experimental)"
789
  msgstr ""
790
 
791
+ #: wp-cache.php:897
792
  msgid "<strong>DO NOT CACHE PAGE</strong> secret key: <a href=\"%s\">%s</a>"
793
  msgstr ""
794
 
795
+ #: wp-cache.php:903
796
  msgid "Note:"
797
  msgstr ""
798
 
799
+ #: wp-cache.php:905
800
  msgid ""
801
  "Uninstall this plugin on the plugins page. It will automatically clean up "
802
  "after itself. If manual intervention is required then simple instructions "
803
  "are provided."
804
  msgstr ""
805
 
806
+ #: wp-cache.php:906
807
  msgid ""
808
  "If uninstalling this plugin, make sure the directory <em>%s</em> is "
809
  "writeable by the webserver so the files <em>advanced-cache.php</em> and "
811
  "files are writeable too is probably a good idea!)"
812
  msgstr ""
813
 
814
+ #: wp-cache.php:907
815
  msgid ""
816
  "Please see the <a href=\"%1$s/wp-super-cache/readme.txt\">readme.txt</a> for "
817
  "instructions on uninstalling this script. Look for the heading, \"How to "
818
  "uninstall WP Super Cache\"."
819
  msgstr ""
820
 
821
+ #: wp-cache.php:908
822
  msgid ""
823
  "Need help? Check the <a href=\"%1$s\">Super Cache readme file</a>. It "
824
  "includes installation documentation, a FAQ and Troubleshooting tips. The <a "
826
  "have been answered."
827
  msgstr ""
828
 
829
+ #: wp-cache.php:911 wp-cache.php:958
830
  msgid "Update Status"
831
  msgstr ""
832
 
833
+ #: wp-cache.php:918
834
  msgid "Accepted Filenames &amp; Rejected URIs"
835
  msgstr ""
836
 
837
+ #: wp-cache.php:943
838
  msgid "Caching On"
839
  msgstr ""
840
 
841
+ #: wp-cache.php:944
842
  msgid "Caching Off"
843
  msgstr ""
844
 
845
+ #: wp-cache.php:945
846
  msgid "Note: enables PHP caching, cache rebuild, and mobile support"
847
  msgstr ""
848
 
849
+ #: wp-cache.php:955
850
  msgid ""
851
  "Notice: PHP caching enabled but Supercache mod_rewrite rules detected. "
852
  "Cached files will be served using those rules. If your site is working ok "
854
  "your install and remove the SuperCache rules."
855
  msgstr ""
856
 
857
+ #: wp-cache.php:960
858
  msgid "Cache Tester"
859
  msgstr ""
860
 
861
+ #: wp-cache.php:961
862
  msgid "Test your cached website by clicking the test button below."
863
  msgstr ""
864
 
865
+ #: wp-cache.php:967
866
  msgid "Fetching %s to prime cache: "
867
  msgstr ""
868
 
869
+ #: wp-cache.php:969 wp-cache.php:978 wp-cache.php:990
870
  msgid "OK"
871
  msgstr ""
872
 
873
+ #: wp-cache.php:972
874
  msgid "Fetching first copy of %s: "
875
  msgstr ""
876
 
877
+ #: wp-cache.php:981 wp-cache.php:992
878
  msgid "FAILED"
879
  msgstr ""
880
 
881
+ #: wp-cache.php:984
882
  msgid "Fetching second copy of %s: "
883
  msgstr ""
884
 
885
+ #: wp-cache.php:996
886
  msgid "One or more page requests failed:"
887
  msgstr ""
888
 
889
+ #: wp-cache.php:1015 wp-cache.php:1016
890
  msgid "Page %d: %d (%s)"
891
  msgstr ""
892
 
893
+ #: wp-cache.php:1022
894
  msgid "Page 1: %s"
895
  msgstr ""
896
 
897
+ #: wp-cache.php:1023
898
  msgid "Page 2: %s"
899
  msgstr ""
900
 
901
+ #: wp-cache.php:1024
902
  msgid "The timestamps on both pages match!"
903
  msgstr ""
904
 
905
+ #: wp-cache.php:1026
906
  msgid "The pages do not match! Timestamps differ or were not found!"
907
  msgstr ""
908
 
909
+ #: wp-cache.php:1027
910
  msgid "Things you can do:"
911
  msgstr ""
912
 
913
+ #: wp-cache.php:1028
914
  msgid ""
915
  "Load your homepage in a logged out browser, check the timestamp at the end "
916
  "of the html source. Load the page again and compare the timestamp. Caching "
917
  "is working if the timestamps match."
918
  msgstr ""
919
 
920
+ #: wp-cache.php:1029
921
  msgid ""
922
  "Enable logging on the Debug page here. That should help you track down the "
923
  "problem."
924
  msgstr ""
925
 
926
+ #: wp-cache.php:1030
927
  msgid ""
928
  "You should check Page 1 and Page 2 above for errors. Your local server "
929
  "configuration may not allow your website to access itself."
930
  msgstr ""
931
 
932
+ #: wp-cache.php:1038
933
  msgid "Send non-secure (non https) request for homepage"
934
  msgstr ""
935
 
936
+ #: wp-cache.php:1039
937
  msgid "Test Cache"
938
  msgstr ""
939
 
940
+ #: wp-cache.php:1043
941
  msgid "Delete Cached Pages"
942
  msgstr ""
943
 
944
+ #: wp-cache.php:1044
945
  msgid ""
946
  "Cached pages are stored on your server as html and PHP files. If you need to "
947
  "delete them use the button below."
948
  msgstr ""
949
 
950
+ #: wp-cache.php:1047 wp-cache.php:2289 wp-cache.php:2308 wp-cache.php:2479
951
+ #: wp-cache.php:3002
952
  msgid "Delete Cache"
953
  msgstr ""
954
 
955
+ #: wp-cache.php:1054 wp-cache.php:2295
956
  msgid "Delete Cache On All Blogs"
957
  msgstr ""
958
 
959
+ #: wp-cache.php:1059
960
  msgid "Recommended Links and Plugins"
961
  msgstr ""
962
 
963
+ #: wp-cache.php:1060
964
  msgid ""
965
  "Caching is only one part of making a website faster. Here are some other "
966
  "plugins that will help:"
967
  msgstr ""
968
 
969
+ #: wp-cache.php:1061
970
  msgid ""
971
+ "<a href=\"%s\">WPSCMin</a>, a Supercache plugin that minifies cached pages "
972
+ "by removing whitespaces and extra characters "
 
 
973
  msgstr ""
974
 
975
+ #: wp-cache.php:1062
976
  msgid ""
977
  "<a href=\"%s\">Yahoo! Yslow</a> is an extension for the Firefox add-on "
978
  "Firebug. It analyzes web pages and suggests ways to improve their "
980
  "the performance tools online at <a href=\"%s\">GTMetrix</a>."
981
  msgstr ""
982
 
983
+ #: wp-cache.php:1063
984
  msgid ""
985
  "<a href=\"%s\">Use Google Libraries</a> allows you to load some commonly "
986
  "used Javascript libraries from Google webservers. Ironically it may reduce "
987
  "your Yslow score."
988
  msgstr ""
989
 
990
+ #: wp-cache.php:1065
 
 
 
 
 
 
 
 
991
  msgid ""
992
  "<strong>Advanced users only:</strong> <a href=\"%s\">Speed up your site with "
993
  "Caching and cache-control</a> explains how to make your site more cacheable "
994
  "with .htaccess rules."
995
  msgstr ""
996
 
997
+ #: wp-cache.php:1066
998
  msgid ""
999
  "<strong>Advanced users only:</strong> Install an object cache. Choose from "
1000
  "<a href=\"%s\">Memcached</a>, <a href=\"%s\">XCache</a>, <a href=\"%s"
1001
  "\">eAcccelerator</a> and others."
1002
  msgstr ""
1003
 
1004
+ #: wp-cache.php:1067
1005
+ msgid ""
1006
+ "<a href=\"%s\">Cron View</a> is a useful plugin to use when trying to debug "
1007
+ "garbage collection and preload problems."
1008
+ msgstr ""
1009
+
1010
+ #: wp-cache.php:1078
1011
  msgid "Make WordPress Faster"
1012
  msgstr ""
1013
 
1014
+ #: wp-cache.php:1079
1015
  msgid ""
1016
  "%1$s is maintained and developed by %2$s with contributions from many others."
1017
  msgstr ""
1018
 
1019
+ #: wp-cache.php:1080
1020
  msgid "He blogs at %1$s and posts photos at %2$s."
1021
  msgstr ""
1022
 
1023
+ #: wp-cache.php:1081
1024
  msgid "Please say hi to him on %s too!"
1025
  msgstr ""
1026
 
1027
+ #: wp-cache.php:1082
1028
  msgid "Need Help?"
1029
  msgstr ""
1030
 
1031
+ #: wp-cache.php:1084
1032
+ msgid ""
1033
+ "Use the debug system in the Debug tab above. It will tell you what the "
1034
+ "plugin is doing."
1035
+ msgstr ""
1036
+
1037
+ #: wp-cache.php:1085
1038
  msgid "<a href=\"%1$s\">Installation Help</a>"
1039
  msgstr ""
1040
 
1041
+ #: wp-cache.php:1086
1042
  msgid "<a href=\"%1$s\">Frequently Asked Questions</a>"
1043
  msgstr ""
1044
 
1045
+ #: wp-cache.php:1087
1046
  msgid "<a href=\"%1$s\">Support Forum</a>"
1047
  msgstr ""
1048
 
1049
+ #: wp-cache.php:1089
1050
  msgid "Rate This Plugin!"
1051
  msgstr ""
1052
 
1053
+ #: wp-cache.php:1090
1054
  msgid ""
1055
  "Please <a href=\"%s\">rate</a> this plugin and tell me if it works for you "
1056
  "or not. It really helps development."
1057
  msgstr ""
1058
 
1059
+ #: wp-cache.php:1099
1060
  msgid "Cached pages since %1$s : <strong>%2$s</strong>"
1061
  msgstr ""
1062
 
1063
+ #: wp-cache.php:1100
1064
  msgid "Newest Cached Pages:"
1065
  msgstr ""
1066
 
1067
+ #: wp-cache.php:1104
1068
  msgid "Cached %s seconds ago"
1069
  msgstr ""
1070
 
1071
+ #: wp-cache.php:1107
1072
  msgid "(may not always be accurate on busy sites)"
1073
  msgstr ""
1074
 
1075
+ #: wp-cache.php:1126
1076
  msgid ""
1077
  "Cache plugins are PHP scripts that live in a plugins folder inside the wp-"
1078
  "super-cache folder. They are loaded when Supercache loads, much sooner than "
1079
  "regular WordPress plugins."
1080
  msgstr ""
1081
 
1082
+ #: wp-cache.php:1127
1083
  msgid ""
1084
  "This is strictly an advanced feature only and knowledge of both PHP and "
1085
  "WordPress actions is required to create them."
1086
  msgstr ""
1087
 
1088
+ #: wp-cache.php:1137
1089
  msgid "Available Plugins"
1090
  msgstr ""
1091
 
1092
+ #: wp-cache.php:1154
1093
  msgid "Easy"
1094
  msgstr ""
1095
 
1096
+ #: wp-cache.php:1154
1097
  msgid "CDN"
1098
  msgstr ""
1099
 
1100
+ #: wp-cache.php:1154
1101
  msgid "Contents"
1102
  msgstr ""
1103
 
1104
+ #: wp-cache.php:1154
1105
  msgid "Preload"
1106
  msgstr ""
1107
 
1108
+ #: wp-cache.php:1154
1109
  msgid "Plugins"
1110
  msgstr ""
1111
 
1112
+ #: wp-cache.php:1154
1113
  msgid "Debug"
1114
  msgstr ""
1115
 
1116
+ #: wp-cache.php:1189
1117
  msgid ""
1118
  "Notice: WP Super Cache mod_rewrite rule checks disabled unless running on <a "
1119
  "href=\"%s\">the main site</a> of this network."
1120
  msgstr ""
1121
 
1122
+ #: wp-cache.php:1198
1123
  msgid "Mod Rewrite Rules"
1124
  msgstr ""
1125
 
1126
+ #: wp-cache.php:1204
1127
  msgid "WordPress MU Detected"
1128
  msgstr ""
1129
 
1130
+ #: wp-cache.php:1204
1131
  msgid ""
1132
  "Unfortunately the rewrite rules cannot be updated automatically when running "
1133
  "WordPress MU. Please open your .htaccess and add the following mod_rewrite "
1134
  "rules above any other rules in that file."
1135
  msgstr ""
1136
 
1137
+ #: wp-cache.php:1206
1138
  msgid "Mod Rewrite rules cannot be updated!"
1139
  msgstr ""
1140
 
1141
+ #: wp-cache.php:1207
1142
  msgid ""
1143
  "You must have <strong>BEGIN</strong> and <strong>END</strong> markers in %s."
1144
  "htaccess for the auto update to work. They look like this and surround the "
1145
  "main WordPress mod_rewrite rules:"
1146
  msgstr ""
1147
 
1148
+ #: wp-cache.php:1209
1149
  msgid "Refresh this page when you have updated your .htaccess file."
1150
  msgstr ""
1151
 
1152
+ #: wp-cache.php:1213
1153
  msgid "Thank you for upgrading."
1154
  msgstr ""
1155
 
1156
+ #: wp-cache.php:1213
1157
  msgid ""
1158
  "The mod_rewrite rules changed since you last installed this plugin. "
1159
  "Unfortunately you must remove the old supercache rules before the new ones "
1165
  "brave enough to use them."
1166
  msgstr ""
1167
 
1168
+ #: wp-cache.php:1217
1169
  msgid "Trailing slash check required."
1170
  msgstr ""
1171
 
1172
+ #: wp-cache.php:1217
1173
  msgid ""
1174
  "It looks like your blog has URLs that end with a \"/\". Unfortunately since "
1175
  "you installed this plugin a duplicate content bug has been found where URLs "
1178
  "and add these two rules to the two groups of Super Cache rules:"
1179
  msgstr ""
1180
 
1181
+ #: wp-cache.php:1219
1182
  msgid ""
1183
  "You can see where the rules go and examine the complete rules by clicking "
1184
  "the \"View mod_rewrite rules\" link below."
1185
  msgstr ""
1186
 
1187
+ #: wp-cache.php:1233
1188
  msgid "Mod Rewrite rules updated!"
1189
  msgstr ""
1190
 
1191
+ #: wp-cache.php:1234
1192
  msgid ""
1193
  "%s.htaccess has been updated with the necessary mod_rewrite rules. Please "
1194
  "verify they are correct. They should look like this:"
1195
  msgstr ""
1196
 
1197
+ #: wp-cache.php:1236
1198
  msgid "Mod Rewrite rules must be updated!"
1199
  msgstr ""
1200
 
1201
+ #: wp-cache.php:1237
1202
  msgid ""
1203
  "Your %s.htaccess is not writable by the webserver and must be updated with "
1204
  "the necessary mod_rewrite rules. The new rules go above the regular "
1205
  "WordPress rules as shown in the code below:"
1206
  msgstr ""
1207
 
1208
+ #: wp-cache.php:1242
1209
  msgid ""
1210
  "WP Super Cache mod rewrite rules were detected in your %s.htaccess file.<br /"
1211
  "> Click the following link to see the lines added to that file. If you have "
1212
  "upgraded the plugin make sure these rules match."
1213
  msgstr ""
1214
 
1215
+ #: wp-cache.php:1245
1216
  msgid ""
1217
  "A difference between the rules in your .htaccess file and the plugin rewrite "
1218
  "rules has been found. This could be simple whitespace differences but you "
1220
  "Click the &#8217;Update Mod_Rewrite Rules&#8217; button to update the rules."
1221
  msgstr ""
1222
 
1223
+ #: wp-cache.php:1247
1224
  msgid "View Mod_Rewrite Rules"
1225
  msgstr ""
1226
 
1227
+ #: wp-cache.php:1253 wp-cache.php:2595
1228
  msgid "Rules must be added to %s too:"
1229
  msgstr ""
1230
 
1231
+ #: wp-cache.php:1260
1232
  msgid "Gzip encoding rules in %s.htaccess created."
1233
  msgstr ""
1234
 
1235
+ #: wp-cache.php:1267
1236
  msgid "Fix Configuration"
1237
  msgstr ""
1238
 
1239
+ #: wp-cache.php:1270
1240
  msgid "Restore Default Configuration"
1241
  msgstr ""
1242
 
1243
+ #: wp-cache.php:1278
1244
  msgid ""
1245
  "Comment moderation is enabled. Your comment may take some time to appear."
1246
  msgstr ""
1247
 
1248
+ #: wp-cache.php:1303
1249
  msgid "Lock Down:"
1250
  msgstr ""
1251
 
1252
+ #: wp-cache.php:1304
 
 
 
 
 
 
 
 
 
 
1253
  msgid ""
1254
  "Prepare your server for an expected spike in traffic by enabling the lock "
1255
  "down. When this is enabled, new comments on a post will not refresh the "
1256
  "cached static files."
1257
  msgstr ""
1258
 
1259
+ #: wp-cache.php:1305
1260
  msgid ""
1261
  "Developers: Make your plugin lock down compatible by checking the "
1262
  "\"WPLOCKDOWN\" constant. The following code will make sure your plugin "
1263
  "respects the WPLOCKDOWN setting."
1264
  msgstr ""
1265
 
1266
+ #: wp-cache.php:1307
1267
  msgid "Sorry. My blog is locked down. Updates will appear shortly"
1268
  msgstr ""
1269
 
1270
+ #: wp-cache.php:1311
1271
  msgid ""
1272
  "WordPress is locked down. Super Cache static files will not be deleted when "
1273
  "new comments are made."
1274
  msgstr ""
1275
 
1276
+ #: wp-cache.php:1313
1277
  msgid ""
1278
  "WordPress is not locked down. New comments will refresh Super Cache static "
1279
  "files as normal."
1280
  msgstr ""
1281
 
1282
+ #: wp-cache.php:1319
 
 
 
 
 
 
 
 
1283
  msgid "Lock Down"
1284
  msgstr ""
1285
 
1286
+ #: wp-cache.php:1327
1287
  msgid "Directly Cached Files"
1288
  msgstr ""
1289
 
1290
+ #: wp-cache.php:1385
1291
  msgid "%s removed!"
1292
  msgstr ""
1293
 
1294
+ #: wp-cache.php:1393
 
 
 
 
1295
  msgid ""
1296
  "You must make %s writable to enable this feature. As this is a security risk "
1297
  "please make it readonly after your page is generated."
1298
  msgstr ""
1299
 
1300
+ #: wp-cache.php:1398
1301
  msgid ""
1302
  "%s is writable. Please make it readonly after your page is generated as this "
1303
  "is a security risk."
1304
  msgstr ""
1305
 
1306
+ #: wp-cache.php:1413
1307
  msgid "Existing direct page"
1308
  msgstr ""
1309
 
1310
+ #: wp-cache.php:1413
1311
  msgid "Delete cached file"
1312
  msgstr ""
1313
 
1314
+ #: wp-cache.php:1418
1315
  msgid "Add direct page:"
1316
  msgstr ""
1317
 
1318
+ #: wp-cache.php:1420
1319
  msgid ""
1320
  "Directly cached files are files created directly off %s where your blog "
1321
  "lives. This feature is only useful if you are expecting a major Digg or "
1322
  "Slashdot level of traffic to one post or page."
1323
  msgstr ""
1324
 
1325
+ #: wp-cache.php:1422
1326
  msgid ""
1327
  "For example: to cache <em>%1$sabout/</em>, you would enter %1$sabout/ or /"
1328
  "about/. The cached file will be generated the next time an anonymous user "
1329
  "visits that page."
1330
  msgstr ""
1331
 
1332
+ #: wp-cache.php:1423
1333
  msgid ""
1334
  "Make the textbox blank to remove it from the list of direct pages and delete "
1335
  "the cached file."
1336
  msgstr ""
1337
 
1338
+ #: wp-cache.php:1428
1339
  msgid "Update Direct Pages"
1340
  msgstr ""
1341
 
1342
+ #: wp-cache.php:1456
1343
+ msgctxt "timezone date format"
1344
+ msgid "Y-m-d G:i:s"
1345
+ msgstr ""
1346
+
1347
+ #: wp-cache.php:1516
1348
  msgid "Expiry Time &amp; Garbage Collection"
1349
  msgstr ""
1350
 
1351
+ #: wp-cache.php:1518
1352
+ msgid ""
1353
+ "<abbr title=\"Coordinated Universal Time\">UTC</abbr> time is <code>%s</code>"
1354
+ msgstr ""
1355
+
1356
+ #: wp-cache.php:1521
1357
+ msgid "Local time is <code>%1$s</code>"
1358
  msgstr ""
1359
 
1360
+ #: wp-cache.php:1525
1361
+ msgid "Next scheduled garbage collection will be at <strong>%s UTC</strong>"
1362
  msgstr ""
1363
 
1364
+ #: wp-cache.php:1529
1365
  msgid ""
1366
  "Warning! <strong>PRELOAD MODE</strong> activated. Supercache files will not "
1367
  "be deleted regardless of age."
1368
  msgstr ""
1369
 
1370
+ #: wp-cache.php:1546
1371
  msgid "Cache Timeout"
1372
  msgstr ""
1373
 
1374
+ #: wp-cache.php:1547 wp-cache.php:1550
1375
  msgid "seconds"
1376
  msgstr ""
1377
 
1378
+ #: wp-cache.php:1548
1379
  msgid ""
1380
  "How long should cached pages remain fresh? Set to 0 to disable garbage "
1381
  "collection. A good starting point is 3600 seconds."
1382
  msgstr ""
1383
 
1384
+ #: wp-cache.php:1549
1385
  msgid "Scheduler"
1386
  msgstr ""
1387
 
1388
+ #: wp-cache.php:1549
1389
  msgid "Timer:"
1390
  msgstr ""
1391
 
1392
+ #: wp-cache.php:1550
1393
  msgid "Check for stale cached files every <em>interval</em> seconds."
1394
  msgstr ""
1395
 
1396
+ #: wp-cache.php:1551
1397
  msgid "Clock:"
1398
  msgstr ""
1399
 
1400
+ #: wp-cache.php:1552
1401
  msgid "HH:MM"
1402
  msgstr ""
1403
 
1404
+ #: wp-cache.php:1552
1405
  msgid ""
1406
+ "Check for stale cached files at this time <strong>(UTC)</strong> or starting "
1407
+ "at this time every <em>interval</em> below."
1408
  msgstr ""
1409
 
1410
+ #: wp-cache.php:1554
1411
  msgid "Interval:"
1412
  msgstr ""
1413
 
1414
+ #: wp-cache.php:1560
1415
  msgid "Notification Emails"
1416
  msgstr ""
1417
 
1418
+ #: wp-cache.php:1561
1419
+ msgid "Email me when the garbage collection runs."
1420
+ msgstr ""
1421
+
1422
+ #: wp-cache.php:1563
1423
  msgid "Garbage Collection"
1424
  msgstr ""
1425
 
1426
+ #: wp-cache.php:1564
1427
  msgid ""
1428
  "<em>Garbage collection</em> is the simple act of throwing out your garbage. "
1429
  "For this plugin that would be old or <em>stale</em> cached files that may be "
1430
  "out of date. New cached files are described as <em>fresh</em>."
1431
  msgstr ""
1432
 
1433
+ #: wp-cache.php:1565
1434
  msgid ""
1435
  "Cached files are fresh for a limited length of time. You can set that time "
1436
  "in the <em>Cache Timeout</em> text box on this page."
1437
  msgstr ""
1438
 
1439
+ #: wp-cache.php:1566
1440
  msgid ""
1441
  "Stale cached files are not removed as soon as they become stale. They have "
1442
  "to be removed by the garbage collecter. That is why you have to tell the "
1443
  "plugin when the garbage collector should run."
1444
  msgstr ""
1445
 
1446
+ #: wp-cache.php:1567
1447
  msgid ""
1448
  "Use the <em>Timer</em> or <em>Clock</em> schedulers to define when the "
1449
  "garbage collector should run."
1450
  msgstr ""
1451
 
1452
+ #: wp-cache.php:1568
1453
  msgid ""
1454
  "The <em>Timer</em> scheduler tells the plugin to run the garbage collector "
1455
  "at regular intervals. When one garbage collection is done, the next run is "
1456
  "scheduled."
1457
  msgstr ""
1458
 
1459
+ #: wp-cache.php:1569
1460
  msgid ""
1461
  "Or, the <em>Clock</em> scheduler allows the garbage collection to run at "
1462
  "specific times. If set to run hourly or twicedaily the garbage collector "
1465
  "time specified."
1466
  msgstr ""
1467
 
1468
+ #: wp-cache.php:1571
1469
  msgid ""
1470
  "There are no best garbage collection settings but here are a few scenarios. "
1471
  "Garbage collection is separate to other actions that clear our cached files "
1472
  "like leaving a comment or publishing a post."
1473
  msgstr ""
1474
 
1475
+ #: wp-cache.php:1573
1476
  msgid ""
1477
  "Sites that want to serve lots of newly generated data should set the "
1478
  "<em>Cache Timeout</em> to 60 and use the <em>Timer</em> scheduler set to 90 "
1479
  "seconds."
1480
  msgstr ""
1481
 
1482
+ #: wp-cache.php:1574
1483
  msgid ""
1484
  "Sites with widgets and rss feeds in their sidebar should probably use a "
1485
  "timeout of 3600 seconds and set the timer to 600 seconds. Stale files will "
1486
  "be caught within 10 minutes of going stale."
1487
  msgstr ""
1488
 
1489
+ #: wp-cache.php:1575
1490
  msgid ""
1491
  "Sites with lots of static content, no widgets or rss feeds in their sidebar "
1492
  "can use a timeout of 86400 seconds or even more and set the timer to "
1493
  "something equally long."
1494
  msgstr ""
1495
 
1496
+ #: wp-cache.php:1576
1497
  msgid ""
1498
  "Sites where an external data source updates at a particular time every day "
1499
  "should set the timeout to 86400 seconds and use the Clock scheduler set "
1500
  "appropriately."
1501
  msgstr ""
1502
 
1503
+ #: wp-cache.php:1578
1504
  msgid ""
1505
  "Checking for and deleting expired files is expensive, but it&#8217;s "
1506
  "expensive leaving them there too. On a very busy site you should set the "
1511
  "using mod_rewrite or PHP caching."
1512
  msgstr ""
1513
 
1514
+ #: wp-cache.php:1579
1515
  msgid "Set the expiry time to 0 seconds to disable garbage collection."
1516
  msgstr ""
1517
 
1518
+ #: wp-cache.php:1580
1519
  msgid "Change Expiration"
1520
  msgstr ""
1521
 
1522
+ #: wp-cache.php:1624
1523
  msgid "Rejected User Agents"
1524
  msgstr ""
1525
 
1526
+ #: wp-cache.php:1625
1527
  msgid ""
1528
  "Strings in the HTTP &#8217;User Agent&#8217; header that prevent WP-Cache "
1529
  "from caching bot, spiders, and crawlers&#8217; requests. Note that super "
1530
  "cached files are still sent to these agents if they already exists."
1531
  msgstr ""
1532
 
1533
+ #: wp-cache.php:1632
1534
  msgid "Save UA Strings"
1535
  msgstr ""
1536
 
1537
+ #: wp-cache.php:1655
1538
  msgid ""
1539
  "Do not cache the following page types. See the <a href=\"http://codex."
1540
  "wordpress.org/Conditional_Tags\">Conditional Tags</a> documentation for a "
1541
  "complete discussion on each type."
1542
  msgstr ""
1543
 
1544
+ #: wp-cache.php:1658
1545
  msgid "Single Posts"
1546
  msgstr ""
1547
 
1548
+ #: wp-cache.php:1659
1549
  msgid "Pages"
1550
  msgstr ""
1551
 
1552
+ #: wp-cache.php:1660
1553
  msgid "Front Page"
1554
  msgstr ""
1555
 
1556
+ #: wp-cache.php:1661
1557
  msgid "Home"
1558
  msgstr ""
1559
 
1560
+ #: wp-cache.php:1662
1561
  msgid "Archives"
1562
  msgstr ""
1563
 
1564
+ #: wp-cache.php:1663
1565
  msgid "Tags"
1566
  msgstr ""
1567
 
1568
+ #: wp-cache.php:1664
1569
  msgid "Category"
1570
  msgstr ""
1571
 
1572
+ #: wp-cache.php:1665
1573
  msgid "Feeds"
1574
  msgstr ""
1575
 
1576
+ #: wp-cache.php:1666
1577
  msgid "Search Pages"
1578
  msgstr ""
1579
 
1580
+ #: wp-cache.php:1667
1581
  msgid "Author Pages"
1582
  msgstr ""
1583
 
1584
+ #: wp-cache.php:1669 wp-cache.php:1772
1585
  msgid "Save"
1586
  msgstr ""
1587
 
1588
+ #: wp-cache.php:1686
1589
  msgid ""
1590
  "Add here strings (not a filename) that forces a page not to be cached. For "
1591
  "example, if your URLs include year and you dont want to cache last year "
1594
  "cache that page."
1595
  msgstr ""
1596
 
1597
+ #: wp-cache.php:1692
1598
  msgid "Save Strings"
1599
  msgstr ""
1600
 
1601
+ #: wp-cache.php:1708
1602
  msgid ""
1603
  "Add here those filenames that can be cached, even if they match one of the "
1604
  "rejected substring specified above."
1605
  msgstr ""
1606
 
1607
+ #: wp-cache.php:1714
1608
  msgid "Save Files"
1609
  msgstr ""
1610
 
1611
+ #: wp-cache.php:1751
1612
  msgid "Currently logging to: %s"
1613
  msgstr ""
1614
 
1615
+ #: wp-cache.php:1754
1616
  msgid ""
1617
  "Fix problems with the plugin by debugging it here. It can log them to a file "
1618
  "in your cache directory."
1619
  msgstr ""
1620
 
1621
+ #: wp-cache.php:1758
1622
  msgid "Debugging"
1623
  msgstr ""
1624
 
1625
+ #: wp-cache.php:1759
 
 
 
 
 
 
1626
  msgid "IP Address"
1627
  msgstr ""
1628
 
1629
+ #: wp-cache.php:1759
1630
  msgid "(only log requests from this IP address. Your IP is %s)"
1631
  msgstr ""
1632
 
1633
+ #: wp-cache.php:1762
 
 
 
 
 
 
 
 
1634
  msgid ""
1635
  "In very rare cases two problems may arise on some blogs:<ol><li> The front "
1636
  "page may start downloading as a zip file.</li><li> The wrong page is "
1638
  "and the permalink structure is <em>/%category%/%postname%/</em>.</li></ol>"
1639
  msgstr ""
1640
 
1641
+ #: wp-cache.php:1763
1642
  msgid ""
1643
  "I&#8217;m 99% certain that they aren&#8217;t bugs in WP Super Cache and they "
1644
  "only happen in very rare cases but you can run a simple check once every 5 "
1646
  "emailed if there is a problem."
1647
  msgstr ""
1648
 
1649
+ #: wp-cache.php:1765
1650
  msgid "Check front page every 5 minutes."
1651
  msgstr ""
1652
 
1653
+ #: wp-cache.php:1766
1654
  msgid "Front page text"
1655
  msgstr ""
1656
 
1657
+ #: wp-cache.php:1766
1658
  msgid ""
1659
  "Text to search for on your front page. If this text is missing the cache "
1660
  "will be cleared. Leave blank to disable."
1661
  msgstr ""
1662
 
1663
+ #: wp-cache.php:1767
1664
  msgid "Clear cache on error."
1665
  msgstr ""
1666
 
1667
+ #: wp-cache.php:1768
1668
  msgid "Email the blog admin when checks are made. (useful for testing)"
1669
  msgstr ""
1670
 
1671
+ #: wp-cache.php:1782
1672
  msgid ""
1673
  "Error: GZIP compression is enabled, disable it if you want to enable wp-"
1674
  "cache."
1675
  msgstr ""
1676
 
1677
+ #: wp-cache.php:1829 wp-cache.php:1995
1678
  msgid "Warning"
1679
  msgstr ""
1680
 
1681
+ #: wp-cache.php:1829
1682
  msgid ""
1683
  "GZIP compression is enabled in WordPress, wp-cache will be bypassed until "
1684
  "you disable gzip compression."
1685
  msgstr ""
1686
 
1687
+ #: wp-cache.php:1891 wp-cache.php:1896 wp-cache.php:1928 wp-cache.php:1933
1688
+ #: wp-cache.php:1939
1689
  msgid "Error"
1690
  msgstr ""
1691
 
1692
+ #: wp-cache.php:1891
1693
  msgid ""
1694
  "Your cache directory (<strong>%1$s</strong>) did not exist and couldn&#8217;"
1695
  "t be created by the web server. Check %1$s permissions."
1696
  msgstr ""
1697
 
1698
+ #: wp-cache.php:1896
1699
  msgid ""
1700
  "Your cache directory (<strong>%1$s</strong>) or <strong>%2$s</strong> need "
1701
  "to be writable for this plugin to work. Double-check it."
1702
  msgstr ""
1703
 
1704
+ #: wp-cache.php:1928
1705
  msgid ""
1706
  "Your WP-Cache config file (<strong>%s</strong>) is out of date and not "
1707
  "writable by the Web server.Please delete it and refresh this page."
1708
  msgstr ""
1709
 
1710
+ #: wp-cache.php:1933
1711
  msgid ""
1712
  "Configuration file missing and %1$s directory (<strong>%2$s</strong>) is "
1713
  "not writable by the Web server.Check its permissions."
1714
  msgstr ""
1715
 
1716
+ #: wp-cache.php:1939
1717
  msgid ""
1718
  "Sample WP-Cache config file (<strong>%s</strong>) does not exist.Verify you "
1719
  "installation."
1720
  msgstr ""
1721
 
1722
+ #: wp-cache.php:1995
1723
  msgid "%s/advanced-cache.php</em> does not exist or cannot be updated."
1724
  msgstr ""
1725
 
1726
+ #: wp-cache.php:1996
1727
  msgid "1. If it already exists please delete the file first."
1728
  msgstr ""
1729
 
1730
+ #: wp-cache.php:1997
1731
  msgid ""
1732
  "2. Make %1$s writable using the chmod command through your ftp or server "
1733
  "software. (<em>chmod 777 %1$s</em>) and refresh this page. This is only a "
1735
  "again. (Change 777 to 755 in the previous command)"
1736
  msgstr ""
1737
 
1738
+ #: wp-cache.php:1998
1739
  msgid "3. Refresh this page to update <em>%s/advanced-cache.php</em>"
1740
  msgstr ""
1741
 
1742
+ #: wp-cache.php:1999
1743
  msgid ""
1744
  "If that doesn&#8217;t work, make sure the file <em>%s/advanced-cache.php</"
1745
  "em> doesn&#8217;t exist:"
1746
  msgstr ""
1747
 
1748
+ #: wp-cache.php:2000
1749
  msgid ""
1750
  "<li>1. Open <em>%1$s$wp_cache_file</em> in a text editor.</li><li>2. Change "
1751
  "the text <em>CACHEHOME</em> to <em>%2$s</em></li><li>3. Save the file and "
1752
  "copy it to <em>%3$s</em> and refresh this page.</li>"
1753
  msgstr ""
1754
 
1755
+ #: wp-cache.php:2023
1756
  msgid ""
1757
  "<h3>WP_CACHE constant set to false</h3><p>The WP_CACHE constant is used by "
1758
  "WordPress to load the code that serves cached pages. Unfortunately it is set "
1761
  "true);</code></p>"
1762
  msgstr ""
1763
 
1764
+ #: wp-cache.php:2025
1765
  msgid ""
1766
  "<strong>Error: WP_CACHE is not enabled</strong> in your <code>wp-config.php</"
1767
  "code> file and I couldn&#8217;t modify it."
1768
  msgstr ""
1769
 
1770
+ #: wp-cache.php:2026
1771
  msgid ""
1772
  "Edit <code>%s</code> and add the following line:<br /> <code>define"
1773
  "('WP_CACHE', true);</code><br />Otherwise, <strong>WP-Cache will not be "
1774
  "executed</strong> by WordPress core. "
1775
  msgstr ""
1776
 
1777
+ #: wp-cache.php:2030
1778
  msgid ""
1779
  "<h3>WP_CACHE constant added to wp-config.php</h3><p>If you continue to see "
1780
  "this warning message please see point 5 of the <a href=\"http://wordpress."
1781
+ "org/extend/plugins/wp-super-cache/faq/\">Troubleshooting Guide</a>. The "
1782
+ "WP_CACHE line must be moved up."
1783
  msgstr ""
1784
 
1785
+ #: wp-cache.php:2058
1786
  msgid "Cache Contents"
1787
  msgstr ""
1788
 
1789
+ #: wp-cache.php:2061
1790
  msgid "Object cache in use. No cache listing available."
1791
  msgstr ""
1792
 
1793
+ #: wp-cache.php:2085
1794
  msgid "Deleting supercache file: <strong>%s</strong><br />"
1795
  msgstr ""
1796
 
1797
+ #: wp-cache.php:2102
1798
  msgid "Deleting wp-cache file: <strong>%s</strong><br />"
1799
  msgstr ""
1800
 
1801
+ #: wp-cache.php:2167
1802
  msgid ""
1803
  "Cache stats are not automatically generated. You must click the link below "
1804
  "to regenerate the stats on this page."
1805
  msgstr ""
1806
 
1807
+ #: wp-cache.php:2168
1808
  msgid "Regenerate cache stats"
1809
  msgstr ""
1810
 
1811
+ #: wp-cache.php:2170
1812
  msgid "Cache stats last generated: %s minutes ago."
1813
  msgstr ""
1814
 
1815
+ #: wp-cache.php:2176
1816
  msgid "WP-Cache"
1817
  msgstr ""
1818
 
1819
+ #: wp-cache.php:2177 wp-cache.php:2192
1820
  msgid "%s Cached Pages"
1821
  msgstr ""
1822
 
1823
+ #: wp-cache.php:2178 wp-cache.php:2197
1824
  msgid "%s Expired Pages"
1825
  msgstr ""
1826
 
1827
+ #: wp-cache.php:2191
1828
  msgid "WP-Super-Cache"
1829
  msgstr ""
1830
 
1831
+ #: wp-cache.php:2201
1832
  msgid "Fresh WP-Cached Files"
1833
  msgstr ""
1834
 
1835
+ #: wp-cache.php:2202 wp-cache.php:2218 wp-cache.php:2234 wp-cache.php:2250
1836
  msgid "URI"
1837
  msgstr ""
1838
 
1839
+ #: wp-cache.php:2202 wp-cache.php:2218
1840
  msgid "Key"
1841
  msgstr ""
1842
 
1843
+ #: wp-cache.php:2202 wp-cache.php:2218 wp-cache.php:2234 wp-cache.php:2250
1844
  msgid "Age"
1845
  msgstr ""
1846
 
1847
+ #: wp-cache.php:2202 wp-cache.php:2218 wp-cache.php:2234 wp-cache.php:2250
1848
  msgid "Delete"
1849
  msgstr ""
1850
 
1851
+ #: wp-cache.php:2217
1852
  msgid "Stale WP-Cached Files"
1853
  msgstr ""
1854
 
1855
+ #: wp-cache.php:2233
1856
  msgid "Fresh Super Cached Files"
1857
  msgstr ""
1858
 
1859
+ #: wp-cache.php:2249
1860
  msgid "Stale Super Cached Files"
1861
  msgstr ""
1862
 
1863
+ #: wp-cache.php:2265
1864
  msgid "Hide file list"
1865
  msgstr ""
1866
 
1867
+ #: wp-cache.php:2267
1868
  msgid "Too many cached files, no listing possible."
1869
  msgstr ""
1870
 
1871
+ #: wp-cache.php:2269
1872
  msgid "List all cached files"
1873
  msgstr ""
1874
 
1875
+ #: wp-cache.php:2272
 
 
 
 
 
 
 
 
 
 
1876
  msgid ""
1877
  "Expired files are files older than %s seconds. They are still used by the "
1878
  "plugin and are deleted periodically."
1879
  msgstr ""
1880
 
1881
+ #: wp-cache.php:2283
1882
  msgid "Delete Expired"
1883
  msgstr ""
1884
 
1885
+ #: wp-cache.php:2308
1886
  msgid "Delete Super Cache cached files (opens in new window)"
1887
  msgstr ""
1888
 
1889
+ #: wp-cache.php:2455
1890
  msgid "%1$s is Stephen Fry proof thanks to caching by %2$s"
1891
  msgstr ""
1892
 
1893
+ #: wp-cache.php:2488
1894
  msgid ""
1895
  "WP Super Cache must be configured. Go to <a href=\"%s\">the admin page</a> "
1896
  "to enable and configure the plugin."
1897
  msgstr ""
1898
 
1899
+ #: wp-cache.php:2494
1900
  msgid "Settings"
1901
  msgstr ""
1902
 
1903
+ #: wp-cache.php:2504
1904
  msgid ""
1905
  "WP Super Cache is disabled. Please go to the <a href=\"%s\">plugin admin "
1906
  "page</a> to enable caching."
1907
  msgstr ""
1908
 
1909
+ #: wp-cache.php:2507
1910
  msgid ""
1911
  "Warning! WP Super Cache caching broken! The script advanced-cache.php could "
1912
  "not load wp-cache-phase1.php.<br /><br />Please edit %1$s/advanced-cache.php "
1913
  "and make sure the path to %2$swp-cache-phase1.php is correct."
1914
  msgstr ""
1915
 
1916
+ #: wp-cache.php:2526
1917
  msgid "[%s] Front page is gzipped! Please clear cache!"
1918
  msgstr ""
1919
 
1920
+ #: wp-cache.php:2526
1921
  msgid ""
1922
  "Please visit %s to clear the cache as the front page of your site is now "
1923
  "downloading!"
1924
  msgstr ""
1925
 
1926
+ #: wp-cache.php:2529
1927
  msgid "[%s] Front page is gzipped! Cache Cleared!"
1928
  msgstr ""
1929
 
1930
+ #: wp-cache.php:2529
1931
  msgid ""
1932
  "The cache on your blog has been cleared because the front page of your site "
1933
  "is now downloading. Please visit %s to verify the cache has been cleared."
1934
  msgstr ""
1935
 
1936
+ #: wp-cache.php:2536
1937
  msgid "[%s] Front page is not correct! Please clear cache!"
1938
  msgstr ""
1939
 
1940
+ #: wp-cache.php:2536
1941
  msgid ""
1942
  "Please visit %1$s to clear the cache as the front page of your site is not "
1943
  "correct and missing the text, \"%2$s\"!"
1944
  msgstr ""
1945
 
1946
+ #: wp-cache.php:2539
1947
  msgid "[%s] Front page is not correct! Cache Cleared!"
1948
  msgstr ""
1949
 
1950
+ #: wp-cache.php:2539
1951
  msgid ""
1952
  "The cache on your blog has been cleared because the front page of your site "
1953
  "is missing the text \"%2$s\". Please visit %1$s to verify the cache has been "
1954
  "cleared."
1955
  msgstr ""
1956
 
1957
+ #: wp-cache.php:2544
1958
  msgid "[%s] Front page check!"
1959
  msgstr ""
1960
 
1961
+ #: wp-cache.php:2544
1962
  msgid ""
1963
  "WP Super Cache has checked the front page of your blog. Please visit %s if "
1964
  "you would like to disable this."
1965
  msgstr ""
1966
 
1967
+ #: wp-cache.php:2587
1968
  msgid "Cannot update .htaccess"
1969
  msgstr ""
1970
 
1971
+ #: wp-cache.php:2587
1972
  msgid ""
1973
  "The file <code>%s.htaccess</code> cannot be modified by the web server. "
1974
  "Please correct this using the chmod command or your ftp client."
1975
  msgstr ""
1976
 
1977
+ #: wp-cache.php:2587
1978
  msgid "Refresh this page when the file permissions have been modified."
1979
  msgstr ""
1980
 
1981
+ #: wp-cache.php:2587
1982
  msgid ""
1983
  "Alternatively, you can edit your <code>%s.htaccess</code> file manually and "
1984
  "add the following code (before any WordPress rules):"
1985
  msgstr ""
1986
 
1987
+ #: wp-cache.php:2591
1988
  msgid ""
1989
  "To serve static html files your server must have the correct mod_rewrite "
1990
  "rules added to a file called <code>%s.htaccess</code>"
1991
  msgstr ""
1992
 
1993
+ #: wp-cache.php:2592
1994
  msgid "You can edit the file yourself add the following rules."
1995
  msgstr ""
1996
 
1997
+ #: wp-cache.php:2593
1998
  msgid " Make sure they appear before any existing WordPress rules. "
1999
  msgstr ""
2000
 
2001
+ #: wp-cache.php:2601
2002
  msgid "Update Mod_Rewrite Rules"
2003
  msgstr ""
2004
 
2005
+ #: wp-cache.php:2752
2006
  msgid "[%1$s] Cache Preload Started"
2007
  msgstr ""
2008
 
2009
+ #: wp-cache.php:2782
2010
  msgid "[%1$s] Refreshing %2$s taxonomy from %3$d to %4$d"
2011
  msgstr ""
2012
 
2013
+ #: wp-cache.php:2828
2014
  msgid "[%1$s] Refreshing posts from %2$d to %3$d"
2015
  msgstr ""
2016
 
2017
+ #: wp-cache.php:2849
2018
  msgid "[%1$s] Cache Preload Stopped"
2019
  msgstr ""
2020
 
2021
+ #: wp-cache.php:2859
2022
  msgid "[%1$s] %2$d posts refreshed"
2023
  msgstr ""
2024
 
2025
+ #: wp-cache.php:2859
2026
  msgid "Refreshed the following posts:"
2027
  msgstr ""
2028
 
2029
+ #: wp-cache.php:2869
2030
  msgid "Scheduling next preload refresh in %d minutes."
2031
  msgstr ""
2032
 
2033
+ #: wp-cache.php:2880
2034
  msgid "[%s] Cache Preload Completed"
2035
  msgstr ""
2036
 
2037
+ #: wp-cache.php:2880
2038
  msgid "Cleaning up old supercache files."
2039
  msgstr ""
2040
 
2041
+ #: wp-cache.php:2923
2042
  msgid "[%s] Preload may have stalled."
2043
  msgstr ""
2044
 
2045
+ #: wp-cache.php:2923
2046
  msgid ""
2047
  "Preload has been restarted.\n"
2048
  "%s"
2049
  msgstr ""
2050
 
2051
+ #: wp-cache.php:2966
2052
  msgid "Supercache Uninstall Problems"
2053
  msgstr ""
2054
 
2055
+ #: wp-cache.php:2966
2056
  msgid ""
2057
  "Dear User,\n"
2058
  "\n"
2070
  "http://wordpress.org/extend/plugins/wp-super-cache/"
2071
  msgstr ""
2072
 
2073
+ #: wp-cache.php:3003
2074
+ msgid "Delete cache of the current page"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2075
  msgstr ""