{"id":11222,"date":"2010-11-20T23:02:58","date_gmt":"2010-11-20T23:02:58","guid":{"rendered":"https:\/\/wordpress.org\/plugins-wp\/warm-cache\/"},"modified":"2024-12-02T15:16:45","modified_gmt":"2024-12-02T15:16:45","slug":"warm-cache","status":"publish","type":"plugin","link":"https:\/\/br.wordpress.org\/plugins\/warm-cache\/","author":1849791,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"4.1.1","stable_tag":"4.1.1","tested":"6.7.5","requires":"3.5","requires_php":"","requires_plugins":null,"header_name":"Warm cache","header_author":"Ramon Fincken","header_description":"","assets_banners_color":"","last_updated":"2024-12-02 15:16:45","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/www.autowarmcache.com","header_author_uri":"https:\/\/www.autowarmcache.com","rating":4.3,"author_block_rating":0,"active_installs":300,"downloads":29790,"num_ratings":19,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1":{"tag":"1.1","author":"ramon fincken","date":"2010-12-05 17:16:14"},"1.1.1":{"tag":"1.1.1","author":"ramon fincken","date":"2010-12-17 20:08:41"},"1.1.2":{"tag":"1.1.2","author":"ramon fincken","date":"2011-03-30 21:06:36"},"1.5":{"tag":"1.5","author":"ramon fincken","date":"2011-06-07 20:26:57"},"1.6":{"tag":"1.6","author":"ramon fincken","date":"2012-10-07 14:29:34"},"1.7":{"tag":"1.7","author":"ramon fincken","date":"2013-05-29 08:28:37"},"1.8":{"tag":"1.8","author":"ramon fincken","date":"2014-02-26 21:43:38"},"1.8.1":{"tag":"1.8.1","author":"ramon fincken","date":"2014-05-27 20:35:46"},"1.9":{"tag":"1.9","author":"ramon fincken","date":"2015-04-25 06:10:29"},"1.9.1":{"tag":"1.9.1","author":"ramon fincken","date":"2015-09-29 18:28:41"},"1.9.2":{"tag":"1.9.2","author":"ramon fincken","date":"2015-10-07 19:49:07"},"1.9.3":{"tag":"1.9.3","author":"ramon fincken","date":"2015-10-07 19:49:07"},"1.9.4":{"tag":"1.9.4","author":"ramon fincken","date":"2016-09-28 19:21:38"},"2.0":{"tag":"2.0","author":"ramon fincken","date":"2016-09-28 19:21:38"},"2.0.1":{"tag":"2.0.1","author":"ramon fincken","date":"2016-09-29 07:45:28"},"2.1":{"tag":"2.1","author":"ramon fincken","date":"2017-02-06 07:10:45"},"2.2":{"tag":"2.2","author":"ramon fincken","date":"2017-06-15 10:24:32"},"2.2.1":{"tag":"2.2.1","author":"ramon fincken","date":"2017-06-15 10:28:32"},"2.2.2":{"tag":"2.2.2","author":"ramon fincken","date":"2018-04-19 01:48:01"},"2.2.3":{"tag":"2.2.3","author":"ramon fincken","date":"2018-07-09 08:56:59"},"3.0.0":{"tag":"3.0.0","author":"ramon fincken","date":"2021-11-22 11:34:45"},"3.1.0":{"tag":"3.1.0","author":"ramon fincken","date":"2023-02-13 12:57:45"},"4.0.0":{"tag":"4.0.0","author":"ramon fincken","date":"2022-09-22 13:08:01"},"4.1.0":{"tag":"4.1.0","author":"ramon fincken","date":"2023-02-14 08:05:30"},"4.1.1":{"tag":"4.1.1","author":"ramon fincken","date":"2024-12-02 15:16:45"}},"upgrade_notice":[],"ratings":{"1":3,"2":0,"3":0,"4":1,"5":15},"assets_icons":[],"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1","1.1.1","1.1.2","1.5","1.6","1.7","1.8","1.8.1","1.9","1.9.1","1.9.2","1.9.3","1.9.4","2.0","2.0.1","2.1","2.2","2.2.1","2.2.2","2.2.3","3.0.0","3.1.0","4.0.0","4.1.0","4.1.1"],"block_files":[],"assets_screenshots":{"screenshot-2.png":{"filename":"screenshot-2.png","revision":3201017,"resolution":"2","location":"plugin"},"screenshot-1.png":{"filename":"screenshot-1.png","revision":3201017,"resolution":"1","location":"plugin"}},"screenshots":{"1":"Details\n<a href=\"http:\/\/s.wordpress.org\/extend\/plugins\/warm-cache\/screenshot-1.png\">Fullscreen Screenshot 1<\/a><br \/>","2":"Overview\n<a href=\"http:\/\/s.wordpress.org\/extend\/plugins\/warm-cache\/screenshot-2.png\">Fullscreen Screenshot 2<\/a><br \/>"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[146,64164,1557,64163,748],"plugin_category":[52,55,57],"plugin_contributors":[79297],"plugin_business_model":[],"class_list":["post-11222","plugin","type-plugin","status-publish","hentry","plugin_tags-cache","plugin_tags-keep","plugin_tags-sitemap","plugin_tags-warm","plugin_tags-xml","plugin_category-performance","plugin_category-seo-and-marketing","plugin_category-taxonomy","plugin_contributors-ramon-fincken","plugin_committers-ramon-fincken"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/s.w.org\/plugins\/geopattern-icon\/warm-cache.svg","icon_2x":false,"generated":true},"screenshots":[{"src":"https:\/\/ps.w.org\/warm-cache\/trunk\/screenshot-1.png?rev=3201017","caption":"Details\n<a href=\"http:\/\/s.wordpress.org\/extend\/plugins\/warm-cache\/screenshot-1.png\">Fullscreen Screenshot 1<\/a><br \/>"},{"src":"https:\/\/ps.w.org\/warm-cache\/trunk\/screenshot-2.png?rev=3201017","caption":"Overview\n<a href=\"http:\/\/s.wordpress.org\/extend\/plugins\/warm-cache\/screenshot-2.png\">Fullscreen Screenshot 2<\/a><br \/>"}],"raw_content":"<!--section=description-->\n<p>Crawls your website-pages based on any XML sitemap. If you have a caching plugin this will keep your cache warm. \nSpeeds up your site.<br \/>\nCompatible with following elements: &lt; sitemap &gt; &lt; url &gt;<br \/>\nAll urls in your sitemap will be visited by the plugin to keep the cache up to date.<br \/>\nWill show average page load times and pages visited.<br \/><\/p>\n\n<p>Needs google XML sitemap to read the generated XML file.<br \/>\nNeeds a cronjob (wget or curl) to call the plugin. You need to setup the cronjob yourself! (Or ask your sysadmin to help you).<br \/>\n* Coding by: <a href=\"https:\/\/www.mijnpress.nl\">MijnPress.nl<\/a> <a href=\"https:\/\/mastodon.social\/@ramonfincken\">Mastodon profile<\/a> <a href=\"https:\/\/profiles.wordpress.org\/ramon-fincken\/\">More plugins<\/a><br \/>\n* Crawl script idea by <a href=\"http:\/\/blogs.tech-recipes.com\/johnny\/2006\/09\/17\/handling-the-digg-effect-with-wordpress-caching\/\">http:\/\/blogs.tech-recipes.com\/johnny\/2006\/09\/17\/handling-the-digg-effect-with-wordpress-caching\/<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload directory <code>warm-cache<\/code> to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress.<\/li>\n<li>Visit Plugins menu to view your Warm cache options.<\/li>\n<li>Run a cronjob. See the menu for the cronjob URL.<br \/>Run it as often as you like, preferably more often then your \npage cache expiration time. <br \/>Example: Page cache expiration = 1 hour, so set your cronjob at 30 minutes.\n<br \/>Set it higher when you have lots of pages<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id='i%20have%20a%20big%20sitemap%20that%20takes%20over%205%20seconds%20to%20load'><h3>I have a BIG sitemap that takes over 5 seconds to load<\/h3><\/dt>\n<dd><blockquote>\n  <p>use a filter called 'http_request_timeout'<\/p>\n<\/blockquote><\/dd>\n<dt id='i%20have%20multiple%20%28language%20%2F%20domain%29%20sitemaps%2C%20but%20i%20can%20only%20add%20one%20sitemap%21'><h3>I have multiple (language \/ domain) sitemaps, but I can only add one sitemap!<\/h3><\/dt>\n<dd><blockquote>\n  <p>Use a sitemap index, pointing to all your (custom\/sub)-sitemaps. Only add the sitemap main index file to the plugin. Do NOT have this in the custom file name:\n  warmcache-sitemap.xml OR warmcache. Use this for example: supersitemap.xml or my_cache_sitemap.xml<\/p>\n<\/blockquote><\/dd>\n<dt id='how%20to%20disable%20logging%20completely%20%28for%20very%20large%20sites%29%3F'><h3>How to disable logging completely (for very large sites)?<\/h3><\/dt>\n<dd><blockquote>\n  <p>Set a define in your wp-config (at the top, newline, after &lt;?php ) with name MP_WARM_CACHE_NO_LOGGING_AT_ALL and value \"yes\"\n  Example<br \/>\n  Please check https:\/\/plugins.trac.wordpress.org\/browser\/warm-cache\/trunk\/readme.txt#L38 DO not copy directly below due to the \"curly quotes\"<br \/>\n  define('MP_WARM_CACHE_NO_LOGGING_AT_ALL', 'yes');<\/p>\n<\/blockquote><\/dd>\n<dt id='how%20to%20run%20a%20cronjob%3F'><h3>How to run a cronjob?<\/h3><\/dt>\n<dd><blockquote>\n  <p>Ask your webhost how to set up a get call using wget or curl. See Installation for instructions howmany times you should call the cronjob.<\/p>\n<\/blockquote><\/dd>\n<dt id='the%20plugin%20shows%20an%20error%2C%20it%20cannot%20read%20the%20xml%20sitemap'><h3>The plugin shows an error, it cannot read the XML sitemap<\/h3><\/dt>\n<dd><blockquote>\n  <p>The fact that you are able to \"see\" the XML in your browser does not guarantee that PHP is able to read it too.<br \/> \n  Consult your host about this, if that fails.\n  <br \/>https:\/\/wordpress.org\/support\/topic\/error-with-google-xml-sitemaps\/<\/p>\n<\/blockquote><\/dd>\n<dt id='sucuri%20%2F%20audit%20log%20notifies%20about%20new%20posts%20beeing%20created'><h3>Sucuri \/ Audit log notifies about new posts beeing created<\/h3><\/dt>\n<dd><blockquote>\n  <p>We use the hidden post type warmcache to store statistics. We also remove them upon each crawl.<br \/>\n  Feel free to ignore creation of posts with warmcache.<br \/>\n  See https:\/\/wordpress.org\/support\/topic\/29-september-2016-update-causing-constant-post-update-notifications-from-secur\/<\/p>\n<\/blockquote><\/dd>\n<dt id='i%20have%20set%20up%20the%20cronjob%20but%20the%20stats%20table%20on%20the%20plugin%20page%20remains%20empty.'><h3>I have set up the cronjob but the stats table on the plugin page remains empty.<\/h3><\/dt>\n<dd><blockquote>\n  <p>@see The plugin shows an error, it cannot read the XML sitemap<\/p>\n<\/blockquote><\/dd>\n<dt id='how%20to%20override%20the%2020%20pages%20crawl%20limit'><h3>How to override the 20 pages crawl limit<\/h3><\/dt>\n<dd><blockquote>\n  <p>Set a define in your wp-config (at the top, newline, after &lt;?php ) with name MP_WARM_CACHE_FILTER_LIMIT and value INTEGER\n  Example<br \/>\n  Please check https:\/\/plugins.trac.wordpress.org\/browser\/warm-cache\/trunk\/readme.txt#L58 DO not copy directly below due to the \"curly quotes\"<br \/>\n  define('MP_WARM_CACHE_FILTER_LIMIT', 25);<\/p>\n<\/blockquote><\/dd>\n<dt id='i%20have%20a%20lot%20of%20questions%20and%20i%20want%20support%20where%20can%20i%20go%3F'><h3>I have a lot of questions and I want support where can I go?<\/h3><\/dt>\n<dd><p>The support forums over here, drop me a toot to notify me of your support topic over here.<br \/>\nI always check my toots, so mention my name with https:\/\/mastodon.social\/@ramonfincken and your problem.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>4.1.1<\/h4>\n\n<p>Bugfix: PHP fatal for _ vs __<\/p>\n\n<h4>4.1.0<\/h4>\n\n<p>Added: merge 3.1.0 and 4.0.0 to account for the PHP fatal countable<\/p>\n\n<h4>4.0.0<\/h4>\n\n<p>Bugfix: PHP fatal on countable in the crawler<\/p>\n\n<h4>3.1.0<\/h4>\n\n<p>Added: Tranlations<br \/>\nAdded: Link to autowarmcache.com<\/p>\n\n<h4>3.0.0<\/h4>\n\n<p>Bugfix: PHP static notice<\/p>\n\n<h4>2.2.3<\/h4>\n\n<p>Added: Complete rewrite of the crawler, better compatibility with W3TC (permalink)<br \/>\nBugfix: Statistics<br \/>\nBugfix: PHP static notice<\/p>\n\n<h4>2.2.2<\/h4>\n\n<p>Bugfix: Fixed skipping the first item in sitemap(s). Thanks Jeff (@upekshapriya) for reporting<br \/>\nAdded: simplexml_load_string function check<\/p>\n\n<h4>2.2.1<\/h4>\n\n<p>Bugfix: PHP notices<\/p>\n\n<h4>2.2<\/h4>\n\n<p>Added: Option to disable logging completely (for very large sites) see FAQ how to do so<\/p>\n\n<h4>2.1<\/h4>\n\n<p>Bugfix: No gzip compression in ob_start filter<br \/>\nBugfix: Devision by zero fixed in wp-admin statistics page<br \/>\nChanged: Added lock transient to prevent multiple warm cache calls. You can now call the warm cache every minute :)<br \/>\nAdded: Override of 20 pages crawl limit via define. See the FAQ on WordPress.org how to do that.<\/p>\n\n<h4>2.0.1<\/h4>\n\n<p>Bugfix: The crawl key was re-set on every view of the admin page<br \/>\nChanged: Caching of results of XML sitemap check is now active<\/p>\n\n<h4>2.0<\/h4>\n\n<p>Added: Staggered crawl, so if you have thousands of posts, the crawl will walk\/slide over those posts in groups of 20 each<br \/>\nChanged: Deleted all transient options, in favour of custom post type warmcache storage<\/p>\n\n<h4>1.9.4<\/h4>\n\n<p>Added: Debug notices when a sitemap is incorrect<\/p>\n\n<h4>1.9.3<\/h4>\n\n<p>Needs re-work: Bugfix: Transients without expiration (if you have no external non-persistant storage your options table will grow), Props M. Bastian<\/p>\n\n<h4>1.9.2<\/h4>\n\n<p>Added: Toggle flush settings<\/p>\n\n<h4>1.9.1<\/h4>\n\n<p>Added: Transient check for correct syntax of sitemap\nAdded: Admin notices when sitemap is not present or currupt<\/p>\n\n<h4>1.9<\/h4>\n\n<p>Changed: Better handling of pre-checks<br \/>\nChanged: Changed API key change message<\/p>\n\n<h4>1.8.1<\/h4>\n\n<p>Added: Flush to prevent loadbalancer\/proxy timeout see https:\/\/wordpress.org\/support\/topic\/needs-flush-to-write-buffers-to-prevent-timeouts<\/p>\n\n<h4>1.8<\/h4>\n\n<p>Added: Sitemap url override<br \/>\nChanged: Info txt in plugin<br \/>\nChanged: Refresh random token<br \/>\nAdded: Cron service link<\/p>\n\n<h4>1.7<\/h4>\n\n<p>Bugfix: Extra if\/else for zero pages to fix x\/0 errors. Thanks to khromov http:\/\/wordpress.org\/support\/topic\/division-by-zero-2 http:\/\/wordpress.org\/support\/profile\/khromov<\/p>\n\n<h4>1.6<\/h4>\n\n<p>Added: Support for sub-sitemaps using &lt; sitemap &gt; format (as used in Beta of Google XML sitemaps). Thanks to Pascal90.de!<\/p>\n\n<h4>1.1.2<\/h4>\n\n<p>Changed: Random password call as mentioned by swanzai http:\/\/wordpress.org\/support\/topic\/plugin-warm-cache-how-to-call-this-plugin-correctly<\/p>\n\n<h4>1.1<\/h4>\n\n<p>First release<\/p>","raw_excerpt":"Crawls your website-pages based on google XML sitemap. If you have a caching plugin this will keep your cache warm. Speeds up your site.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/11222","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=11222"}],"author":[{"embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ramon-fincken"}],"wp:attachment":[{"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=11222"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=11222"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=11222"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=11222"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=11222"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/br.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=11222"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}