array( 'href' => array() ) ); // Arguments for wp_kses to allow links. if ( isset( $wp_cache_front_page_checks ) == false ) { $wp_cache_front_page_checks = true; } echo '
'; echo '
'; wp_nonce_field( 'wp-cache' ); echo ''; ?>


here but are not officially supported.', 'wp-super-cache' ), 'https://wordpress.org/documentation/article/nginx/#wp-super-cache-rules' ), array( 'a' => array( 'href' => array(), ), ) ); ?>














' . esc_html__( '304 support is disabled by default because some hosts have had problems with the headers used in the past.', 'wp-super-cache' ) . '
'; ?>


' . __( 'Mobile Browsers', 'wp-super-cache' ) . '
' . esc_html( $wp_cache_mobile_browsers ) . "
" . __( 'Mobile Prefixes', 'wp-super-cache' ) . "
" . esc_html( $wp_cache_mobile_prefixes ) . "
"; } ?>

(" . __( "Recommended", "wp-super-cache" ) . ")"; ?>




DO NOT CACHE PAGE secret key: %s', 'wp-super-cache' ), trailingslashit( get_bloginfo( 'url' ) ) . "?donotcachepage={$cache_page_secret}", $cache_page_secret ); ?>

  1. strlen( ABSPATH ) && ABSPATH == substr( $cache_path, 0, strlen( ABSPATH ) ) ) { $msg = __( 'The plugin detected a bare directory index in your cache directory, which would let visitors see your cache files directly and might expose private posts.', 'wp-super-cache' ); if ( ! $is_nginx && $super_cache_enabled && $wp_cache_mod_rewrite == 1 ) { $msg .= ' ' . __( 'You are using expert mode to serve cache files so the plugin has added Options -Indexes to the .htaccess file in the cache directory to disable indexes. However, if that does not work, you should contact your system administrator or support and ask for them to be disabled, or use simple mode and move the cache outside of the web root.', 'wp-super-cache' ); } else { $msg .= ' ' . sprintf( __( 'index.html files have been added in key directories, but unless directory indexes are disabled, it is probably better to store the cache files outside of the web root of %s', 'wp-super-cache' ), ABSPATH ) . ''; } echo "
  2. $msg
  3. "; } ?>
  4. %s and update the mod_rewrite rules in the .htaccess file.', 'wp-super-cache' ), ABSPATH ); ?>

  1. %s is writeable by the webserver so the files advanced-cache.php and cache-config.php can be deleted automatically. (Making sure those files are writeable is probably a good idea!)', 'wp-super-cache' ), esc_attr( WP_CONTENT_DIR ) ); ?>
  2. readme.txt for instructions on uninstalling this script. Look for the heading, "How to uninstall WP Super Cache".', 'wp-super-cache' ), plugins_url() ); ?>
  3. the documentation. It includes installation documentation, a FAQ, and Troubleshooting tips. The support forum is also available. Your question may already have been answered.', 'wp-super-cache' ), 'https://jetpack.com/support/wp-super-cache/', 'https://wordpress.org/support/plugin/wp-super-cache/' ), $kses_allow_links ); ?>
'; wp_nonce_field( 'wp-cache' ); ?>

.htaccess is modified. It should probably be in the same directory as your wp-config.php. This file has special rules that serve the cached files very quickly to visitors without ever executing PHP. The .htaccess file can be updated automatically, but if that fails, the rules will be displayed here and it can be edited by you. You will not need to update the rules unless a warning shows here.', 'wp-super-cache' ); ?>

" . __( 'Thank you for upgrading.', 'wp-super-cache' ) . " " . sprintf( __( 'The mod_rewrite rules changed since you last installed this plugin. Unfortunately, you must remove the old supercache rules before the new ones are updated. Refresh this page when you have edited your .htaccess file. If you wish to manually upgrade, change the following line: %1$s so it looks like this: %2$s The only changes are "HTTP_COOKIE" becomes "HTTP:Cookie" and "wordpressuser" becomes "wordpress". This is a WordPress 2.5 change but it’s backwards compatible with older versions if you’re brave enough to use them.', 'wp-super-cache' ), '
RewriteCond %{HTTP_COOKIE} !^.*wordpressuser.*$
', '
RewriteCond %{HTTP:Cookie} !^.*wordpress.*$
' ) . "

"; } else { global $valid_nonce; if ( ! isset( $_POST['updatehtaccess'] ) ) { // phpcs:ignore WordPress.Security.NonceVerification.Missing if ( $scrules == '' ) { wpsc_update_htaccess_form( 0 ); // don't hide the update htaccess form } else { wpsc_update_htaccess_form(); } } elseif ( $valid_nonce && isset( $_POST[ 'updatehtaccess' ] ) ) { if ( add_mod_rewrite_rules() ) { echo "
" . __( 'Mod Rewrite rules updated!', 'wp-super-cache' ) . "
"; echo "

" . sprintf( __( '%s.htaccess has been updated with the necessary mod_rewrite rules. Please verify they are correct. They should look like this:', 'wp-super-cache' ), $home_path ) . "

\n"; } else { global $update_mod_rewrite_rules_error; echo "
" . __( 'Mod Rewrite rules must be updated!', 'wp-super-cache' ) . "
"; echo "

" . sprintf( __( 'The plugin could not update %1$s.htaccess file: %2$s.
The new rules go above the regular WordPress rules as shown in the code below:', 'wp-super-cache' ), $home_path, "" . $update_mod_rewrite_rules_error . "" ) . "

\n"; } echo "
"; echo "

" . esc_html( $rules ) . "

\n
"; } else { ?>

Click the following link to see the lines added to that file. If you have upgraded the plugin, make sure these rules match.', 'wp-super-cache' ), $home_path ); ?>

"; if ( $rules != $scrules ) echo '
' . wp_text_diff( $scrules, $rules, array( 'title' => __( 'Rewrite Rules', 'wp-super-cache' ), 'title_left' => __( 'Current Rules', 'wp-super-cache' ), 'title_right' => __( 'New Rules', 'wp-super-cache' ) ) ) . "
"; echo "

# BEGIN WPSuperCache\n" . esc_html( $rules ) . "# END WPSuperCache

\n"; echo "

" . sprintf( __( 'Rules must be added to %s too:', 'wp-super-cache' ), WP_CONTENT_DIR . "/cache/.htaccess" ) . "

"; echo "
# BEGIN supercache\n" . esc_html( $gziprules ) . "# END supercache

"; echo ''; } } ?>

UTC time is %s', 'wp-super-cache' ), date_i18n( $timezone_format, false, 'gmt' ) ); ?>%1$s', 'wp-super-cache' ), date_i18n( $timezone_format ) ); ?>" . sprintf( __( 'Next scheduled garbage collection will be at %s UTC', 'wp-super-cache' ), date_i18n( $timezone_format, $next_gc, 'gmt' ) ) . "

"; if ( $wp_cache_preload_on ) echo "

" . __( 'Warning! PRELOAD MODE activated. Supercache files will not be deleted regardless of age.', 'wp-super-cache' ) . "

"; echo ""; echo '
'; echo ''; echo ''; echo ''; echo "\n"; echo "\n"; echo ''; echo ''; echo "\n"; echo "
" . __( "seconds", 'wp-super-cache' ) . "
" . __( 'How long should cached pages remain fresh? Set to 0 to disable garbage collection. A good starting point is 3600 seconds.', 'wp-super-cache' ) . "
' . esc_html__( 'Scheduler', 'wp-super-cache' ) . ''; echo "'; echo ''; echo ""; $schedules = wp_get_schedules(); echo ""; echo '
" . esc_html__( 'seconds', 'wp-super-cache' ) . '
' . esc_html__( 'How often to check for stale cached files.', 'wp-super-cache' ) . '
" . __( "HH:MM", 'wp-super-cache' ) . "
" . __( 'Check for stale cached files at this time (UTC) or starting at this time every interval below.', 'wp-super-cache' ) . "

" . __( 'Email me when the garbage collection runs.', 'wp-super-cache' ) . "
\n"; echo "
" . __( 'Garbage Collection', 'wp-super-cache' ) . "
"; echo "
  1. " . __( 'Garbage collection is the simple act of throwing out your garbage. For this plugin that would be old or stale cached files that may be out of date. New cached files are described as fresh.', 'wp-super-cache' ) . "
  2. \n"; echo "
  3. " . __( 'Cached files are fresh for a limited length of time. You can set that time in the Cache Timeout text box on this page.', 'wp-super-cache' ) . "
  4. \n"; echo "
  5. " . __( 'Stale cached files are not removed as soon as they become stale. They have to be removed by the garbage collecter. That is why you have to tell the plugin when the garbage collector should run.', 'wp-super-cache' ) . "
  6. \n"; echo "
  7. " . __( 'Use the Timer or Clock schedulers to define when the garbage collector should run.', 'wp-super-cache' ) . "
  8. \n"; echo "
  9. " . __( 'The Timer scheduler tells the plugin to run the garbage collector at regular intervals. When one garbage collection is done, the next run is scheduled.', 'wp-super-cache' ) . "
  10. \n"; echo "
  11. " . __( 'Or, the Clock scheduler allows the garbage collection to run at specific times. If set to run hourly or twice daily, the garbage collector will be first scheduled for the time you enter here. It will then run again at the indicated interval. If set to run daily, it will run once a day at the time specified.', 'wp-super-cache' ) . "
  12. \n"; echo "
"; echo "

" . __( 'There are no best garbage collection settings but here are a few scenarios. Garbage collection is separate to other actions that clear our cached files like leaving a comment or publishing a post.', 'wp-super-cache' ) . "

\n"; echo "
    "; echo "
  1. " . __( 'Sites that want to serve lots of newly generated data should set the Cache Timeout to 60 and use the Timer scheduler set to 90 seconds.', 'wp-super-cache' ) . "
  2. \n"; echo "
  3. " . __( 'Sites with widgets and rss feeds in their sidebar should probably use a timeout of 3600 seconds and set the timer to 600 seconds. Stale files will be caught within 10 minutes of going stale.', 'wp-super-cache' ) . "
  4. \n"; echo "
  5. " . __( 'Sites with lots of static content, no widgets or rss feeds in their sidebar can use a timeout of 86400 seconds or even more and set the timer to something equally long.', 'wp-super-cache' ) . "
  6. \n"; echo "
  7. " . __( 'Sites where an external data source updates at a particular time every day should set the timeout to 86400 seconds and use the Clock scheduler set appropriately.', 'wp-super-cache' ) . "
  8. \n"; echo "
"; echo "

" . __( 'Checking for and deleting expired files is expensive, but it’s expensive leaving them there too. On a very busy site, you should set the expiry time to 600 seconds. Experiment with different values and visit this page to see how many expired files remain at different times during the day.', 'wp-super-cache' ) . "

"; echo "

" . __( 'Set the expiry time to 0 seconds to disable garbage collection.', 'wp-super-cache' ) . "

"; echo '
'; wp_nonce_field('wp-cache'); echo "
\n"; ?>
'; echo '

' . __( 'Accepted Filenames & Rejected URIs', 'wp-super-cache' ) . '

'; echo ''; echo '

' . __( 'Do not cache the following page types. See the Conditional Tags documentation for a complete discussion on each type.', 'wp-super-cache' ) . '

'; echo '
'; echo ''; echo '
'; echo '
'; echo '
'; echo '  
'; echo '
'; echo '  
'; echo '  
'; echo '
'; echo '
'; echo '
'; echo '
'; wp_nonce_field('wp-cache'); echo "
\n"; echo ''; // Rejected URL strings echo '
'; echo '

' . __( 'Rejected URL Strings', 'wp-super-cache' ) . '

'; echo '
'; echo "

" . __( 'Add here strings (not a filename) that forces a page not to be cached. For example, if your URLs include year and you dont want to cache last year posts, it’s enough to specify the year, i.e. ’/2004/’. WP-Cache will search if that string is part of the URI and if so, it will not cache that page.', 'wp-super-cache' ) . "

\n"; echo ' '; echo '
'; wp_nonce_field( 'wp-cache' ); echo "
\n"; echo '
'; // Rejected Cookies echo '
'; echo '

' . __( 'Rejected Cookies', 'wp-super-cache' ) . '

'; echo '
'; echo "

" . __( 'Do not cache pages when these cookies are set. Add the cookie names here, one per line. Matches on fragments, so "test" will match "WordPress_test_cookie". (Simple caching only)', 'wp-super-cache' ) . "

\n"; echo ' '; echo '
'; wp_nonce_field('wp-cache'); echo "
\n"; echo '
'; // Always Cache Filenames echo '
'; echo '

' . __( 'Always Cache Filenames', 'wp-super-cache' ) . '

'; echo '
'; echo "

" . __( 'Add here those filenames that can be cached, even if they match one of the rejected substring specified above.', 'wp-super-cache' ) . "

\n"; echo ' '; echo '
'; wp_nonce_field('wp-cache'); echo "
\n"; echo '
'; echo '
'; echo '';