{"id":367575,"date":"2026-09-30T15:19:18","date_gmt":"2026-09-30T15:19:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/wckd-fast-wp-pages\/"},"modified":"2026-10-03T08:44:02","modified_gmt":"2026-10-03T08:44:02","slug":"wckd-fast-pages","status":"publish","type":"plugin","link":"https:\/\/bal.wordpress.org\/plugins\/wckd-fast-pages\/","author":23564532,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.4.4","stable_tag":"1.4.4","tested":"7.1.2","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"WCKD Fast Pages","header_author":"WCKD Marketing","header_description":"Makes every page load instantly for visitors. Under the hood: a lean full-page cache. Finished HTML is served from disk before WordPress loads and cleared automatically when content changes.","assets_banners_color":"30373e","last_updated":"2026-10-03 08:44:02","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wckd.marketing\/plugins\/wckd-fast-pages\/","header_author_uri":"https:\/\/wckd.marketing\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":122,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.4.3":{"tag":"1.4.3","author":"wckdmarketing","date":"2026-09-30 15:35:21","revision":3721587},"1.4.4":{"tag":"1.4.4","author":"wckdmarketing","date":"2026-10-03 08:44:02","revision":3725947}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3721572,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3721572,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3721572,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3721572,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.4.3","1.4.4"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[146,3853,247,794,17693],"plugin_category":[52,54],"plugin_contributors":[283717],"plugin_business_model":[],"class_list":["post-367575","plugin","type-plugin","status-publish","hentry","plugin_tags-cache","plugin_tags-page-cache","plugin_tags-performance","plugin_tags-speed","plugin_tags-static","plugin_category-performance","plugin_category-security-and-spam-protection","plugin_contributors-wckdmarketing","plugin_committers-wckdmarketing"],"banners":{"banner":"https:\/\/ps.w.org\/wckd-fast-pages\/assets\/banner-772x250.png?rev=3721572","banner_2x":"https:\/\/ps.w.org\/wckd-fast-pages\/assets\/banner-1544x500.png?rev=3721572","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/wckd-fast-pages\/assets\/icon-128x128.png?rev=3721572","icon_2x":"https:\/\/ps.w.org\/wckd-fast-pages\/assets\/icon-256x256.png?rev=3721572","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>WCKD Fast Pages is a deliberately small full-page cache for sites without a\nlogged-in front end (brochure sites, organizations, portfolios). The first\nvisit to a page saves its finished HTML; every visit after that is served\nstraight from disk <strong>before WordPress or the database load<\/strong>, typically\n20 to 30 times faster server response.<\/p>\n\n<p><strong>Built to be boring:<\/strong><\/p>\n\n<ul>\n<li>Content edits clear the cache automatically, so visitors never see stale pages. Editing a page clears just that page and the listings that show it, then rebuilds them in the background.<\/li>\n<li>Visitors arriving through ads and email links (utm tags, click ids) get the instant copy too. Tracking is untouched: it runs in the browser.<\/li>\n<li>Each page is compressed once when saved, so browsers get a ready-made gzip copy and the server never compresses the same page twice.<\/li>\n<li>Logged-in users, visitors with a shopping cart in progress, previews, real query strings, search, feeds, and POST requests always bypass. A page a plugin marks as private is never saved.<\/li>\n<li>Security headers a plugin adds, such as a Content-Security-Policy, are sent with saved pages too.<\/li>\n<li>Deactivating, deleting, half-removing or half-uploading the plugin can never break the site: every failure path falls through to a normal WordPress render.<\/li>\n<\/ul>\n\n<p><strong>The dashboard (Settings \u2192 Fast Pages):<\/strong><\/p>\n\n<ul>\n<li>A measured, plain-language speed banner (\"Pages on this site load 22\u00d7 faster\u2026\") with one-click re-measuring.<\/li>\n<li>Every page on the site with its cache status, timestamp and size, 50 at a time, with filters and search, plus per-page refresh.<\/li>\n<li>A \"Cache All\" button that rebuilds every page's saved copy, one page at a time. Each row updates live as its page is cached, with a time estimate, Pause, Resume and Stop.<\/li>\n<li>Pause serving for one hour (auto-resumes).<\/li>\n<li>Settings for what to always show live (content types, categories, tags or specific addresses), how much to clear after an edit, and how fast Cache All runs.<\/li>\n<\/ul>\n\n<p><strong>Technical notes (for hosts and developers):<\/strong> on activation the plugin\ninstalls a <code>wp-content\/advanced-cache.php<\/code> drop-in and defines <code>WP_CACHE<\/code>\nin <code>wp-config.php<\/code>, the standard mechanism that lets cached pages skip\nWordPress entirely. It never overwrites another plugin's drop-in, and\ndeactivation\/uninstall remove both cleanly. Respects <code>DONOTCACHEPAGE<\/code> and\n    Cache-Control: private or <code>no-store<\/code>, offers filters for what is saved,\nwhat bypasses and what an edit clears, and honours the\n    WCKD_FAST_PAGES_DISABLED and <code>WCKD_FAST_PAGES_TTL<\/code> constants. WP-CLI:\n    wp fast-pages status | purge | warm.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin.<\/li>\n<li>Visit Settings \u2192 Fast Pages and press \"Cache All\".<\/li>\n<li>Press \"Measure Speed\" to see the before\/after on your own server.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"will%20my%20visitors%20see%20outdated%20pages%20after%20i%20edit%20something%3F\"><h3>Will my visitors see outdated pages after I edit something?<\/h3><\/dt>\n<dd><p>No. Saving a post or page clears its saved copy immediately, along with\nthe copies of every page that lists it. Publishing or unpublishing,\nchanging a title or address, and editing menus, categories, widgets or\nsite settings clear everything, because those show up on every page.\nClearing everything is instant, however large the site. Pages are saved\nagain on their next visit, or all at once with \"Cache All\".\nEach saved copy is also used for at most 12 hours. The first visit after\nthat quietly rebuilds it, so pages that change on their own (like event\nschedules) stay current even if nobody edits anything. There is no\nscheduled rebuilding and no wasted server work: a page nobody visits is\nnever rebuilt. Developers can tune the window with the\n    WCKD_FAST_PAGES_TTL constant.<\/p><\/dd>\n<dt id=\"does%20it%20work%20on%20large%20sites%3F\"><h3>Does it work on large sites?<\/h3><\/dt>\n<dd><p>Yes. It has been tested on a site with over 3,000 pages. The dashboard\nlists pages 50 at a time, clearing the cache is instant, and editing a\npage clears only that page and the listings that show it, then rebuilds\nthem in the background (you can change this in Settings). Cache All\nrebuilds one page at a time with a pause between each, so even a full\nrebuild stays gentle on shared hosting; at the Normal speed, 3,000 pages\ntake roughly 40 minutes to an hour, in the background. You can pause it,\nand on large sites you can also skip it and let pages cache as visitors\narrive.<\/p>\n\n<p>How large? Visitors are served at the same speed whatever the size of the\nsite. The dashboard and Cache All are comfortable up to roughly 10,000\npages; beyond that the page list and a full rebuild become slow, and\nletting pages cache as visitors arrive is the better choice.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20my%20membership%20%2F%20woocommerce%20site%3F\"><h3>Does it work with my membership \/ WooCommerce site?<\/h3><\/dt>\n<dd><p>It is not designed for sites where visitors log in or see personalized\ncontent. Logged-in users and visitors with something in a WooCommerce or\nEasy Digital Downloads cart always bypass the cache, and a page a plugin\nmarks as private is never saved, so the site keeps working, but those\nvisitors and pages gain no speedup.<\/p><\/dd>\n<dt id=\"a%20plugin%20on%20my%20site%20gives%20visitors%20a%20cookie.%20is%20that%20a%20problem%3F\"><h3>A plugin on my site gives visitors a cookie. Is that a problem?<\/h3><\/dt>\n<dd><p>Not for safety. A site that gives a visitor a cookie may go on to show\nthat visitor pages made for them, so anyone carrying such a cookie always\ngets live pages, and a page is never saved while the site is setting one.\nThe dashboard names the cookie. If it never changes what a page shows (it\nonly remembers a consent choice or counts visits, say), list it under\nHarmless cookies on the Settings tab and pages are saved as usual.<\/p><\/dd>\n<dt id=\"my%20site%20can%20be%20reached%20at%20more%20than%20one%20address.%20what%20happens%3F\"><h3>My site can be reached at more than one address. What happens?<\/h3><\/dt>\n<dd><p>Pages are saved only when they are requested at the site's own address,\nthe one under Settings \u2192 General. A second domain pointed at the same\nsite, or your host's temporary address, still works, but its visitors\nalways get live pages. (WordPress itself redirects between the www and\nnon-www forms of your address, so those are not affected.)<\/p><\/dd>\n<dt id=\"what%20happens%20if%20i%20deactivate%20or%20delete%20it%3F\"><h3>What happens if I deactivate or delete it?<\/h3><\/dt>\n<dd><p>The site simply becomes a normal WordPress site again. Every removal\npath, including deleting the plugin folder by FTP, is fail-safe.<\/p><\/dd>\n<dt id=\"does%20it%20send%20any%20data%20anywhere%3F\"><h3>Does it send any data anywhere?<\/h3><\/dt>\n<dd><p>No. There are no external services, no accounts, and no tracking. Every\nrequest the plugin makes is your site talking to itself.<\/p><\/dd>\n<dt id=\"are%20there%20requirements%20my%20site%20must%20meet%3F\"><h3>Are there requirements my site must meet?<\/h3><\/dt>\n<dd><p>Pretty permalinks (any structure other than plain ?p=123) are required;\nthe settings page tells you if they are off. Subdirectory installs work.\nMultisite networks are not supported.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.4.4<\/h4>\n\n<ul>\n<li>Built for large sites: the page list has filters, search and 50 pages per screen, and clearing the cache is instant at any size.<\/li>\n<li>Editing a page now refreshes only that page and the listings that show it, in the background. A new setting lets you clear everything instead.<\/li>\n<li>Cache All shows live progress with a time estimate, Pause, Resume and Stop, has a speed setting, and keeps running after you close the dashboard.<\/li>\n<li>Always show live can be set by content type, category or tag.<\/li>\n<li>Dashboard reorganized into All Pages and Settings tabs.<\/li>\n<li>Safer with personalized pages: private pages, shopping carts and visitors carrying a cookie from your site are always served live, and pages are saved only for the site's own address.<\/li>\n<li>Fixes: comments and category changes now refresh the pages they affect, and pages with non-English addresses are saved once and kept up to date.<\/li>\n<\/ul>\n\n<h4>1.4.3<\/h4>\n\n<ul>\n<li>Initial release on WordPress.org.<\/li>\n<\/ul>","raw_excerpt":"Makes every page load instantly for visitors. A lean full-page cache that serves finished HTML before WordPress loads.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/367575","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=367575"}],"author":[{"embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wckdmarketing"}],"wp:attachment":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=367575"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=367575"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=367575"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=367575"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=367575"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=367575"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}