=== Pegasaas Accelerator WP === Contributors: pegasaas Donate link: https://pegasaas.com/ Tags: pagespeed,web performance,image optimization,caching,defer css,webperf,web perf,critical css,minify,lazy load,minification,page caching,browser caching,lazy loading,lazy load images,gzip,css combine,css optimization,js optimization,page speed,pegasaas,speed up wordpress,google pagespeed,load time Requires at least: 4.6 Tested up to: 5.8 Requires PHP: 5.6.0 Stable tag: trunk License: GPLv3 License URI: https://www.gnu.org/licenses/gpl-3.0.html Web Performance, Simplified -- it's what we do. If you have limited-to-no web performance optimization experience, or want to consoldate all of your site's web performance plugins into a single plugin, then Pegasaas Accelerator WP is the plugin for you. Designed to automatically optimize your WordPress pages and posts for Web Performance and Google PageSpeed, Pegasaas Accelerator WP leverages the power of the Pegasaas web performance API to deliver cutting edge web performance optimizations, that work in harmony with one another, without requiring you to know a thing about web performance optimization. == Description == We believe everyone should be able to have a fast website without having to spend countless hours learning how different web performance plugins operate. Pegasaas Accelerator WP optimizes your WordPress web pages and posts for maximum speed via the Pegasaas API, applying over 30 different web performance transformations, in harmony. Some of the optimizations automatically performed on your pages include: * Automatic Detection and Injection of Critical CSS * Deferral of Render Blocking CSS * Deferral of Unused CSS (Basic) * Deferral of Render Blocking JavaScript * Minification of CSS * Minification of JavaScript * Minification of HTML * Automatic Image Optimization (Basic) * Removal of Query Strings from Static Resources * DNS Prefetching * Page Caching * Auto Clear Page Cache * Automatic Pre-Caching (Optimizing) of your Pages * Combine CSS (Basic) * Combine JavaScript (Basic) * Google Fonts Optimization * Minimize Critical Requests Depth * Default Web font-display * Preload Resources * Preload Web Fonts * Preload Scripts * Lazy Load Foreground Images * Lazy Load Background Images * Lazy Load IFRAMEs * Lazy Load Vimeo * Lazy Load YOUTUBE * Lazy Load Scripts * Lazy Load Third Party Vendor Scripts * Enabling of Browser Caching * Enabling of GZIP Compression * Disable WP Emoji * Cache Favicons **Additional Features** * Reporting of PageSpeed Scores * Reporting of Load Time Metrics and Speed Scores * Staging Mode * Global Foundational Web Performance Coverage **Compatibility** * Page Builder Compatible: Divi, Elementor, Beaver Builder, X, 7, Thrive * eCommerce Compatible: WooCommerce, WP eCommerce, Ecwid, Easy Digital Downloads * Varnish Compatible * Redis Compatible * Cloudflare Compatible **Web Performance Benchmarking** So that you know how your web pages are performing, the plugin displays the PageSpeed Score for your pages, posts, and custom enabled post types, as well as the newest web performance metrics available from Google PageSpeed Insights Version 5 and Google Lighthouse, including: * Time To First Byte * First Contentful Paint * Largest Contentful Paint * Speed Index * Time To Interactive * First CPU Idle * Total Blocking Time * Cumulative Layout Shift **Premium Features Available** * Additional Coverage (for sites that want more than 10 pages optimized with the premium API web performance optimizations) * Automatic Global CDN Integration for Static Resources * Automatic WebP Image Delivery * External (off-site) Image Optimization * Automatic Image Resizing * Advanced Lazy Loading of Scripts * Advanced Combine JS * Advanced Combine CSS * Advanced Deferral of Render Blocking Resources * Advanced Deferral of Unused CSS * Optimize on-the-fly for e-commerce pages * Beast Mode (Autopilot) * Lazy Loading HTML (for large web pages) * Auto deferral of Plugin Scripts * Google Ads Deferral == Video Tour == [youtube https://www.youtube.com/watch?v=f90Kb1AJiIA] == Installation == Use our GUEST (free) API access and start optimizing immediately. GUEST API includes: * Coverage of up to 10 pages using the premium API web performance optimizations * Global coverage using basic web performance techniques * 100 Monthly Image Transformations: Your images will automatically be optimized and cached to your WordPress website. * 10 Pages Scanned for PageSpeed and Web Performance Metrics 1. Upload `pegasaas-accelerator-wp` folder to the `/wp-content/plugins/` directory, or upload the provided zip through your WordPress Dashboard "Plugin" panel. 1. Activate the plugin through the 'Plugins' menu in WordPress 1. Sign up for GUEST API Access, or if you feel you will need premium optimizations on more than 10 pages, sign up for a PREMIUM API key. 1. Agree to the Terms of Service 1. Choose the number of pages, posts, or post-type objects to accelerate 1. Sit back and wait for the initial optimizations and benchmark and accelerated PageSpeed scores to be retrieved -- this takes approximately 5 minutes == Frequently Asked Questions == = Do I need another caching plugin other than Pegasaas Accelerator WP? = No, we recommend you do not use other optimization plugins at the same time as Pegasaas Accelerator WP, as doing so may cause a conflict. = Can I use other web performance optimization plugins while using Pegasaas Accelerator WP? We do not recommend you operate other optimization plugins as doing so could cause a conflict in operations, as well as cause your WordPress website to run unnecessarily slow due to a duplication of functionality. == Screenshots == 1. Interface 2. Page Scores 3. Settings Panel 4. Page/Posts Panel 5. Install: Start 6. Install: Choose Interface 7. Install: Choose Experience Level 8. Install: Get API Key 9. Install: Terms of Service 10. Install: Choose Pages 11. Install: Set LIVE/Staging Mode 12. Installing 13. Dark Mode 14. Light Mode == Changelog == = 3.8.15 = **WooCommerce Compatibility (December 29, 2021)** * Added in functionality to auto-clear catalog on product content update/added to category = 3.8.14 = **Fatal error: Uncaught Error: Non-static method PegasaasAccelerator::execution_time() (December 6, 2021) ** * To resolve: Fatal error: Uncaught Error: Non-static method PegasaasAccelerator::execution_time() = 3.8.13 = **WordPress 5.8 Compatibility Check (November 6, 2021)** * Confirmed plugin is compatible with WP 5.8 = 3.8.12 = **Bug Fixes (October 13, 2021)** * Resolved CURL errors when SSL certificate expired. * Patched issue with logging system that was causing fatal errors. * Resolved issues that were causing some Divi functionality to break. = 3.8.11 = **API Communication Update (September 30, 2021)** * Issue where optimizations were submitting in an non-blocking manner by default, when they should have been submitted via blocking method, is resolved. This should provide better stability. = 3.8.10 = **InstaPages/Divi Compatibility (September 16, 2021)** * Added additional support so that 'Instapages' managed through the WordPress system can be optimized with Pegasaas * Added support for Divi scripts to use special CDN based event triggers = 3.8.9 = **InstaPages Compatibility (September 15, 2021)** * Added support so that 'Instapages' managed through the WordPress system can be optimized with Pegasaas * Updated javascript deferral handler to v22 = 3.8.8 = **Division by Zero Error (August 24, 2021)** * Resolved error in dashboard caused by division by zero issue = 3.8.7 = **Updated javascript deferral handler (August 23, 2021)** * Updated javascript deferral handler to v20 * Resolved warning in dashboard when no third-party analytics are found = 3.8.6 = **Web Performance Scores/Nginx Compatibility (June 22, 2021)** * Revised how cache is called when a web performance score is requested = 3.8.5 = **AMP Plugin Compatibility (June 22, 2021)** * Added output buffering compatibility for the AMP plugin = 3.8.4 = **Image Optimization (June 21, 2021)** * Resolved issue in plugin where the "auto resize images" setting was not being observed for local optimizations = 3.8.3 = **General Updates (June 17, 2021)** * Updated user-agent string for background re-optimization fetches * Added additional handling for building optimized images on-the-fly for installations not using the CDN (ie Guest API) = 3.8.2 = **Document Conditioning (June 15, 2021)** * Added document conditioning where html document is missing and tags * Added additional handling for building optimized images on-the-fly for installations not using the CDN (ie Guest API) * Added cron task to clear stale requests once daily * Optimized database query while running clear_queued_cache_resources background task * Added further compatibility for PHP 8 = 3.8.1 = **Logging Update (June 10, 2021)** * Added additional detail for 'long process' events * Added further compatibility for PHP 8 * Resolved issue with on-the-fly javascript deferral * Updated javascript deferral handler to v17 = 3.8.0 = **Strip Web Fonts for Mobile - Custom Setting (June 8, 2021)** * Added ability to choose the fonts you wish to strip for mobile * Added new "long process" logging * Improved auto-cache clear mechanism for when posts are trashed * Corrected an issue with inline-background-image styles. * Added compatibility for PHP8 * Resolved issues with pages becoming automaticall un-accelerated * Improved the logging function for better readability = 3.7.0 = **Auto-Crawl Feature Updated / Updated jQuery Handler (May 26, 2021)** * Added ability to set the Auto-Crawl 'maximum execution time', 'maximum pages per crawl' and 'frequency' that the auto-crawl occurs. * Updated the auto-crawl so that requests to the origin site are non-blocking * Upgraded from jQuery Handler from v8 to latest v16 * Added compatibility for Google Optimize * Updated the process optimization mechanism so that the plugin fetches the optimization from the API node that processed the optimization rather than go through the primary API endpoint = 3.6.11 = **Feature Addition / Compatibility (May 18, 2021)** * Fixed issue with Google Font imports. * Added ability to bypass optimization if there is no or tag. This resolves issues with plugins that serve non HTML documents (JSON, PDF, XML) * Added support for Google Optimize = 3.6.10 = **Feature Addition / Compatibility (April 30, 2021)** * Added ability to strip footer comments from cached/optimized pages. * Added ability to detect the "Content-Type" of the page/post being requested, and if it is not "text/html" then the system will automatically bypass performing any optimization. This resolves issues with plugins that serve non HTML documents (JSON, PDF, XML) = 3.6.9 = **Bug Fix (April 22, 2021)** * Resolved issue with error messages that preventing the update of pages/posts. = 3.6.8 = **Bug Fix (April 22, 2021)** * Resolved issue with error messages that preventing the update of pages/posts. = 3.6.7 = **General Improvements (April 21, 2021)** * Updated Whitelabel functionality to allow for plugin renaming and obfuscation * Updated Elementor compatiblity systems to allow for enabling/disabling exclusion of post-###.css files from the defer-unused-css feature. * Added support for the "preload web fonts" and "preload scripts" features, which can be enabled/disabled in Manual mode, but are included by default within the Hypersonic auto-pilot mode. * Added fallback support for sites with large cache, to not scan the pegasaas-cache folder for exact file stats -- this means for an improvement in performance for larger sites on slower servers. = 3.6.6 = **Staging Mode Bug Fixes (March 26, 2021)** * Resolved issue when previewing a page where cache did not exist, which was showing a blank page * Resolved issue when existing cache was not existing, the system would not auto-build the cache * Resolved issue when staging mode was active, when cache existed on a staged page, system would continue to re-request the page for every hit * Added ability to specify a page to use as the template for global critical css for an associated post type, in the "Inject Critical CSS" settings. * Interface update to show the "edit page level settings" icon, in orange, should page level settings having been modified from the default settings. * Updates to WPML handling where the page slugs were not fetching properly in the Page Scores view. = 3.6.5 = **Compatibility and Bug Fixes (March 17, 2021)** * Added better coverage for WPML by adjusting the PegasaasUtils::wpml_multi_domains_active() function * Resolved an issue in the local optimization html minification routine which was causing a site to display a blank page. * Added coverage for the paginated blog pages * Fixed problem with log rotation = 3.6.4 = **Compatibility (February 23, 2021)** * Added output buffer compatiblity for the Cookie Law Info plugin * Resolved warnnings experienced on Siteground in the "installation wizard" = 3.6.3 = **Compatibility (February 22, 2021)** * Added dashboard compatibility for the Nextgen Gallery * Added output buffer compatiblity for the Cookie Law Info plugin = 3.6.2 = **Cloudflare Cache Clear / Updated Logging System** * Resolved an improper cache clearing call to the Cloudflare API. * Updated the new login system furhter to allow for searching. = 3.6.1 = **Broken Images/ Cloudflare Conditioning** * Bug fix for broken images that appeared when logged in and viewing pages in the website that used images that had width and height defined with "px" in the attributes. * Added bootup code to the plugin that communicates with Cloudflare API to adjust certain settings to make Cloudflare more compatible with Pegasaas = 3.6.0 = **Performance Improvements** * Upgraded the semaphore system to prevent long blocking in situations where blocking was not necessary * Added new database table for semaphores, rather than relying on internal WordPress data handling, for better reliability * Corrected Minification Issue with non-standard closing comment tag * Added updated logging system = 3.5.3 = **Performance Tweaks** * Re-enabled new caching mechanism for the Pegasaas large data structure * Reduced the maximum semphore timeout from 5000ms to 1000ms * Added in Google Maps option to the Lazy Loading section = 3.5.2 = **Cloudflare Bug Fix / UX+UI Updates (Jaunary 6, 2021)** * Fixed issue where the plugin was not fetching the default zone from Cloudflare on sites that used the www subdomain in their domain name. * Improved UX of the Page Scores panel to show the Post Title, time of last cache and web performance scan, as well as hide the "edit page level settings" icon until the user hovers over the row * Added ability to set the "Prioritize Re-Optimization" setting on a page-by-page basis, via the edit "page/post" page. = 3.5.1 = **Search Filter Bug Fix (December 31, 2020)** * This patch includes a fix for the Pegasaas dashboard search filter that was brokein in 3.5.0, as well as a number of smaller code tweaks. = 3.5.0 = **Improved Installer, Prioritized Page Optimization, Performance Improvements (December 30, 2020)** This minor release improves a number of UI and UX aspects of the plugin. **Improved Installer** * The installer now has a separate step for the compatibility checker, which is now more comprehensive. * In many cases, the compatibility step can now also be skipped. * The installer will also jump immediately to the dashboard upon fetching/validating an API key, cutting the "initialization" time down considerably. **Prioritized Page Optimization (Beta)** * Premium API plans will now include the ability to mark pages to be prioritized above the rest in a site, so that those pages are optimized ahead of the rest of the site. **Performance Improvements** * Added a large data structure to the cached data storage system. This speeds up the /wp-admin/ dashboard load by as much as 1 second/1000 pages. This may only be noticable for sites with over 2500 pages. * Changed some API communication methods to be non-blocking * Made re-optimization requests less intense on the website's web server by maximizing the number of requests in the queue. **Automatic Web Performance Rescans** * Re-activated this feature from v3.1 * Re-scans now happen automatically on re-optimization (provided not a significant number of web performance scans haven't been submitted in the last 24 hours) = 3.4.0 = API Submit Method (December 11, 2020) This minor release improves the mechanism that submits the optimization request to the Pegasaas API.  Until 2020 (prior to v3.0) the default behaviour used non-blocking calls from the plugin to the API.  In 2020, this behaviour was switched to a blocking call in order to improve reliability.  In version 3.4.0, the submission system will be a hybrid mechanism: blocking unless the plugin experiences a communication fault when submitting an optimization request.  If a timeout or error is encountered, the plugin will switch to a non-blocking submission method which includes a background check (run every 10 minutes) to ensure that any pending requests that were submitted via the non-blocking mechanism were indeed received by the plugin. This new setting (found in Settings -> Miscellaneous -> API Submit Method) is configurable -- you may choose between the new "Auto (Hybrid)", "Blocking", or "Non-Blocking" methods.  You can also now set the timeout duration for blocking api requests, as well as the the time period that the system will enter into a "non-blocking" mode, if you're using the new default method. = 3.3.12 = Redirection Bug Fix (November 17, 2020) = 3.3.11 = Bug Fixes (November 16, 2020) * Resolved issue where the number of pages accelerated sometimes showed as 0 in the dashboard = 3.3.10 = Elementor Compatibility (October 30, 2020) * Resolved issue in some Elementor interfaces where the Elementor post/page editor would not fully load = 3.3.9 = WPX Cloud and jQuery Updater Compatibility (October 16, 2020) * Adjusted the Cache-Control parameters for WPX Cloud so that the wp-admin and wp-login.php endpoints are not cached * Added jQuery Updater script signatures for better reliability in jquery script execusion when deferring javascript = 3.3.8 = Elementor Compatibility / Small Bug Fixes (October 6, 2020) * Added new feature which provides a much needed boost for sites powered by Elementor. This feature is automatically enabled, but can be disabled in the Settings->Compatibility section. * Resolved issue where some sites were having "unoptimized" pages automatically optimized. * Set the upper limit on the number of web performance scans, to return as a part of the score, to 1000 (as greater than 1000 can cause memory issues). = 3.3.7 = Compatibility Improvements (September 18, 2020) * Resolved issue where when trailing slashes were disabled in the site, the .htaccess instructions plugin would not pull from cache properly. * Added better support for WPML and WooCommerce Multilingual plugin * Corrected issue with persistant long-loading background AJAX request. * Added support for WPX Cloud CDN -- you can now enable the super fast WPX Cloud CDN for ultra fast TTFB if you're hosted with WPX = 3.3.6 = Compatibility Improvements (September 11, 2020) * Slow Server Compatibility: increased compatibility test timeout to allow for slower web servers * Added compatibility for Really Simple SSL content filter = 3.3.5 = General Improvements (September 9, 2020) * Added Largest Contentful Paint, Total Blocking Time, and Cumulative Layout Shift metrics to the interface * Fixed issue with sites that use a trailing slash in their URLS that were not auto redirecting to the appropriate page when the trailing slash was left off * Resolved issue which was causing WP Site Health to have warnings related to the JSON API. = 3.3.4 = Dashboard Improvements (August 28, 2020) * Improved load time of interface by caching some complex data structures in WordPress database * Added ability to re-optimize pages without clearing cache * Added ability to log when certain critical data structures are updated/deleted * Added better cache handling for LiteSpeed servers in .htaccess file * Improved handling for output buffer fetch = 3.3.3 = Additional Compatibility for WooCommerce, WPML, Caldera Forms (August 3, 2020) * WooCommerce: Cart, Checkout, and My Account pages are now automatically not cached * WooCommerce: Improved performance when upating orders * WPML: Now supports multi-domains configuration * Caldera Forms: Better compatbility for Caldera Forms API = 3.3.2 = Additional Compatibility for AMP (July 9, 2020) * Prior to this update, some of the advanced features of AMP were not being applied to the page. = 3.3.1 = Interface Performance Improvements (July 9, 2020) * Adjusted compatibility with the "redirection" plugin which improved interface load time. * Added remote testing capability to determine server reponse time of the server. * Adjusted description for compatibility check failure when a blank response is returned from the test submission. Description now states that the server is too slow. = 3.3.0 = Auto Pilot Modes (June 26, 2020) This minor release adds the new "Auto Pilot" setting to the plugin.  Upon installation, the user now has the option of chosing from "basic", "supersonic", "hypersonic" or "beast mode" auto pilot modes.  Should the user wish, after initialization, the user can put the system into "manual configuration" mode. The new "Beast Mode" setting gets the fastest speeds available, but some of the features (HTML Lazy Loading, Deferring Unused Javascript) are considered highly experimental and may not work with every website, so this mode should be used with caution. There have been a number of other updates to the plugin since the last release, including support for the "WebP Express", "BunnyCDN", and "WP Daddy Builder" plugins. = 3.2.2 = Added ability to handle very large web pages. (May 25, 2020) = 3.2.1 = Resolved bug that caused Elementor to not be able to edit pages. (May 15, 2020) = 3.2.0 = Upgraded Web Performance Data Fetch Method (May 14, 2020) * This minor update added support for a "notify and fetch" method of submitting web performance data to the plugin.  In previous versions, the API would submit the web performance data back to the plugin directly once a scan was complete.  * In this new version, the plugin is notified that the results are ready and then the plugin immediately fetches the data.  The reason that we moved to a "notification and fetc"h (vs "direct push") method was that some web servers were blocking the web performance data submissions, and thus the installation would never complete. * While this will not resolve all hung installations, this should account for a large number of failed attempts to get the plugin initial scans completed. = 3.1.14 = Compatibility for Third Party Vendor Scripts, Plugin, and Hosting (May 7, 2020) * Added support for third-party vendor scripts (Subscribers, Ngageics) * Added support for Optimole Image CDN * Resolved issue with Resty systems that block wp_remote_request requests using a stale user agent string -- this caused the compatibility checker to fail. = 3.1.13 = Third Party Vendor Scripts (April 23, 2020) * Added support for third-party vendor scripts (Olark, Bibblio) = 3.1.12 = Third Party Vendor Scripts & Cache Clearing Issues (April 16, 2020) * Added support for six new third-party vendor scripts (Facebook SDK, AnyClip, Social Warfare, ConvertBox, PubGuru, Media.net) * Removed calls to API to clear API remote cache on Combined CSS and Deferred JS as those resources now exist with timestamped filenames = 3.1.11 = Compatibility (WP 5.4) and Third Party Vendor Scripts (April 13, 2020) * Confirmed compatibility with WP 5.4 * Added Driftt as a third-party vendor script that can be lazy loaded * Added TrustArc as a third-party vendor script that can be lazy loaded = 3.1.10 = Code Conditioning / Permalink Issue (April 7, 2020) * Resolved incorrectly formatted