With the last release almost 6 months in the past, it’s high time for a new Autoptimize release. And what a release that will be my friends!
Here are the most important features/ improvements (most new options are on a separate tab, “Extra” to keep things organized as seen in the screenshot);
- Google fonts; remove (not new), but also “combine & link” and “combine and load async” (with webload.js), intelligently preconnecting to Google’s domains to limit performance impact even further
- Async JS, can be applied to local or 3rd party JS (if local it will be auto-excluded from autoptimization)
- support to tell browsers to preconnect (= dns lookup + tcp/ip connection + ssl negotiation) to 3rd party domains (depends on browser support, works in Chrome & Firefox)
- remove WordPress’ Core’s emoji CSS & JS
- remove (version parameter from) Querystring
- support to clear cache through WP CLI
- a significant amount of bugfixes done by some seriously smart people via GitHub (thanks all!!), including a fix for the main bug in AO 2.2.x which saw the HTML minifier go PacMan on spaces in some circumstances
If you want to test AO 2.3, you can download the zipfile from GitHub here. I would love your feedback!
Happy end-of-year to all, who knows we can wrap up AO 2.3 nicely, ribbon and all, for New Years? :-)
I just committed what I consider the last feature to be added to AO Extra; the optimization of Google Fonts, with the choice between:
- “aggregate and link”, where the Google Font CSS might still render-blocking but there will be no “flash of unstyled fonts”)
- “aggregate and load asynchronous with webfont.js” will not be render-blocking, but might lead to that dreaded “flash of unstyled fonts”
Next step before merging AO Extra with Autoptimize to become AO 2.3; testing. And that’s where I need your help;
- Download the AO Extra zip-file from Github
- go to Plugins -> Add New -> Upload Plugin
- Click “browse” and select the zip-file you downloaded in (1)
- Click “Install now”
- Click “Activate”
- Go to Settings -> Autoptimize -> Extra
- Give generic feedback below or file bugs in the projects Github Issues
If all goes well Autoptimize 2.3 could be release before we have to wave 2017 goodbye :-)
So with that nice little page cache experiment concluded, I started working on something that will definitively be included in the next version of Autoptimize; Extra Auto-optimizations!
You can read all about it below or you can skip all of that and immediately download the zipfile of the “AO Extra power-up” from the Github repository.
The 3 features available now;
- remove Emoji’s
- remove (version parameter from the) query string (not that big a deal, from a load time perspective, but still)
- the ability to have Autoptimize add the
There’s one extra feature that will very likely be added; optimize Google Fonts (because removing them is considered harsh, apparently).
Do download, do test and do let me know if anything is broken in the comments or via my contact form. And If you have other ideas for extra features, do let me know too!
So I integrated a page cache (based on KeyCDN Cache Enabler) in Autoptimize, just to see how easy (or difficult) it would be. Turns out it was pretty easy, mostly because Cache Enabler (based on Cachify, which was very popular in Germany until the developer abandoned Cachify) is well-written, simple and efficient. :-)
No plans to release this though. Or do you think I should?
Sucuri writes about their pov on performance:
Whereas Neil Patel writes:
When you’re in the weeds of optimizing your site speed, play smart. Instead of trying hard to push down your document complete, start rendering, or fully loaded page load time metrics (all of which are important), focus on the highest-impact metric first: TTFB.
Where TTFB = time to first byte. Needless to say I’m with Neil on this!
So I wanted to replace a site’s (*) main title which required some fancy font (Courgette!) to be downloaded, by an SVG image.
Here’s what I did;
- make a screenshot of the node in Firefox Developer Tools -> Inspector -> select node -> click “screenshot node” in context menu
- convert the png-file into svg at http://pngtosvg.com/ result being a 6.93KB file.
- optimize the svg at http://petercollingridge.appspot.com/svg-optimiser resulting in a 3.1KB file (see above image) which remains crispy at whatever size.
- added the SVG as background image (not inline though, might do that next) and set “visibility” of the logo->a->h3 (which has the title in it as text) to “hidden”
- ticked Autoptimize’s “remove Google Fonts”-option (which also removed a slew of other unwanted requests for fonts)
(*) The site is my wife’s boeken-jagers.be which is an offspring of her successful “De Boekenjagers” Facebook group where people hide books for others to find (hunt) and share info about that. 27 000 members and counting, proud of my Veerleken!
So work on Autoptimize 2.2 is almost finished and I need your help testing this version before releasing (targeting May, but that depends on you!). The more people I have testing, the faster I might be able to push this thing out and there’s a lot to look forward to;
- New option: enable/ disable AO for logged in users for all you pagebuilders out there
- New option: enable/ disable AO for cart/ checkout pages of WooCommerce, Easy Digital Downloads & WP eCommerce
- New minification/ caching system, significantly speeding up your site for non-cached pages (previously part of a power-up)
- Switched to rel=preload + Filamentgroup’s loadCSS for CSS deferring
- Additional support for HTTP/2 setups (no GUI, you might need to have a look at the API to see/ use all possibilities)
- Important improvements to the logic of which JS/ CSS can be optimized (getPath function) increasing reliability of the aggregation process
- Updated to a newer version of the CSS Minification component (albeit not the 3.x one, which seems a tad too fresh and which would require me to drop support for PHP 5.2 which will come but just not yet)
- API: Lots of extra filters, making AO (even) more flexible.
- Lots of bugfixes and smaller improvements (see GitHub commit log)
So if you want to help:
- Download the zip-file from Github
- Overwrite the contents of
wp-content/plugins/autoptimize with the contents of
autoptimize-master from the zip
- Test and if any bug (regression) create an issue in GitHub (if it doesn’t exist already).
Very much looking forward to your feedback!