Tidbits from Brian - Issue #56
WordPress 7.0 - Things you might have missed 🔍
WordPress 7.0 was released on May 20. In terms of the number of Core Trac Tickets, it was one of the biggest releases in the last decade. More than 46% of users have already updated. 😮 I usually don’t cover WordPress updates in depth, but this one has quite a few interesting changes you might have missed. Here are a few that stood out to me.
The most obvious change was the “makeover” of the UI in the WordPress dashboard, new colors, font/button tweaks, rounded corners, etc. I have mixed thoughts on this, especially the blue. It feels more modern, but I also get an early-2000s hyperlink vibe. 🤔 I think I’ll get used to it over time. But you can always change the color scheme under your user profile if you prefer the old one.
Another improvement was adding the Command Palette in the admin bar (Ctrl + K or Cmd + K on Mac). This existed in older versions of WordPress, but many users didn’t even know about it. I use it daily. You can quickly access things without your mouse. Once you start using it, you won’t go back. 😉
Another big change was the addition of cross-document view transitions. When navigating between URLs, transitions are smoothed out with a fade animation, instead of an abrupt page reload. This essentially makes the dashboard feel more like a Web App. It’s supported by over 85% of browsers.
Next, WordPress 7.0 got AI connectors. 🤖 This is what most of the buzz is about. However, there are some big caveats you should be aware of:
The API keys, by default, are stored in your database. While other license keys are usually stored this way, there is a difference. These keys can eat up tokens and leave you with a massive bill. I recommend using an environmental variable or a PHP constant to store your keys, not in the database. 🔒 This will ensure nobody gets access to these keys. Encryption for keys is being discussed, but honestly, WordPress design makes this hard.
You can negate some of the billing worry by setting a spending limit in Claude, ChatGPT, etc.
The API key you’re using isn’t the same as the one from your $20/month plan with Claude or ChatGPT. This is a different key that you generate, and it uses the pay-per-token model (meaning it can quickly add up).
It’s important to understand the different methods you can use AI with WordPress. For example, the application password/MCP method gives AI access to your WordPress site (via REST API). The AI Connectors are about WordPress calling out to AI.
Having AI more accessible in WordPress will open up more possibilities for third-party plugin developers to hook into it. I’m sure there will be a lot of experimenting over the next couple of months. It just seems a little rushed. Aaron Russel has a post with some of the same concerns. The good news is, they are working on more granular controls.
You can now add custom CSS to individual blocks. There are better places to add CSS if you need it globally. But this could come in handy for quick fixes or one-time use blocks.
You can now hide individual blocks per device type (desktop, tablet, mobile) based on the viewport. Note: Blocks hidden are still rendered in the DOM. The hiding happens with CSS.
You can now connect your site directly to Google Fonts, and they will be downloaded locally on your site. This will work with classic themes, not just FSE themes. If you’re using our Perfmatters plugin, our Local Font feature will still result in slightly less CSS due to our limit subsets option. However, it’s always good to have more options. The more locally hosted fonts, the better. You can also upload custom fonts. 🚀
WordPress core has dropped support for PHP 7.2 and 7.3. And the use of the beta label (which was being used for PHP 8) has been retired. This will hopefully encourage more folks to update. If you’re curious, we’ve been running PHP 8.5 on all our sites for a while now with no issues.
The Custom HTML block in the editor got a facelift. Kudos to Eric Karkovack for pointing this out. It would be cool to eventually see CodeMirror working here. But this is an improvement over the old version.
CodeMirror was updated to the latest v5 release, along with CSSLint, HTMLHint, and JSONLint. It also replaced Esprima with Espree for ES6 support and improved JavaScript linting. This was the first meaningful update to CodeMirror since WordPress 4.9 shipped in November 2017. 😮 Things like the Customizer use CodeMirror for syntax highlighting, as well as our Perfmatters plugin for code snippets. No timeline yet for CodeMirror 6, but that is going to take a lot more due to backward compatibility.
OPcache is a PHP performance feature that caches compiled PHP code in memory so it doesn’t have to recompile the same files on every request. Many WordPress hosting providers enable this by default behind the scenes. OPcache metrics have now been added to Site Health. This is handy to have for further troubleshooting performance issues on a site. ⚡
There’s a new icon block. Right now, it just has a few included SVG icons for basic things. But there are plans to let you upload others down the road.
Revisions also got a makeover. Although I still prefer the split-screen workflow. For now, you can still click on “Open classic revisions screen.” But I’m assuming this will eventually be deprecated.
Real-time collaboration was also originally planned for the 7.0 release, but it was pulled for a variety of reasons. Honestly, probably a good idea. That will be coming later.
Obviously, those are just a few of the big things I noticed. If you want a deeper dive into all the WordPress 7.0 changes, I recommend this in-depth post from Carlo.
Updates ✍️
We pushed out an update for our Perfmatters WordPress plugin. Here are a few of the changes:
Added new option to select the editor theme for code snippets and global scripts. 🎨 We have 10 themes included (Ayu Dark, Ayu Mirage, Dracula, Eclipse, Idea, Material, Material Darker, Monokai, Neo, and Nord). You can also upload a custom CodeMirror 5 theme stylesheet.
Added new shortcode option when choosing a location for HTML code snippets. We had a lot of requests for this. It will generate a shortcode you can copy and paste anywhere you need to run the code.
Added base64 encoding to exported code snippets to prevent import requests from being blocked by certain firewalls. Previously exported code snippet JSON files can still be imported.
Added new Location helper class to store shared logic to parse and match string based location input fields throughout the plugin.
Added the ability to use the “front” keyword in location input fields (preloads, fetch, Google Maps disable) to always match the front page of the site. 🛣️
Added additional lazy loading compatibility styles specifically for iframes placed inside Elementor text and HTML elements.
Adjusted Script Manager Global View rows to always display multiple post IDs in ascending order.
Multiple styling adjustments and fixes throughout the plugin UI.
Made some changes to how certain UI elements trigger a forced reload in response to specific actions to make things less jarring.
Fixed an issue where our compatibility styles for a lazy loaded video inside a responsive embed could break the layout if the core block library stylesheet was disabled.
Fixed an issue where code type selection for individual code snippets was still visible even after saving. 👨🔧
Fixed an issue where the next page buttons in the snippets table was still showing as active even when viewing the last page.
Fixed an issue where stylesheets with protocol-relative URLs were not getting parsed for used CSS.
Disabled lint markers for HTML code snippets, as they do not currently work for combined HTML and inline PHP code.
Removed unnecessary instances of perfmatters-lazy-youtube class from lazy loading inline styles. All lazy loading video features are now using a shared perfmatters-lazy-video class.
Removed unnecessary development directories from plugin files.
We’ve also cleaned up the UI on Perfmatters and Novashare websites regarding account management. 🧹 Everything (Account, Profile, Affiliate) is now under one place with clean tabs to bounce between. We’ve added a “Download Plugin” option at the top. If you have an active subscription, it’s now always one click away. We’ve also improved the responsive views and fixed annoying horizontal scrollbars.
Interesting things 🔎
Misc.
The new Raycast for Mac beta is now open to everyone. Their technical dive into how they made it is interesting.
A revolutionary cancer treatment could transform autoimmune disease. 🏥 As someone who has struggled with an autoimmune disease for 12+ years, I hope that science catches up.
Waymos are all over Phoenix and Scottsdale. I can’t leave my house without seeing a few, although they just temporarily suspended freeway access. This Robotaxi Tracker is pretty cool to watch the growth.
Firefox has been working on Project Nova, a complete overhaul of their browser coming later this year.
Google and Apple are rolling out end-to-end encryption for RCS. Hopefully, this can finally be over!
Speaking of encryption, every voice and video call on Discord is now end-to-end encrypted. 🔒
WordPress
The Liquid Web fiasco. On May 12th, I woke up to Katie Keith’s post about Kadence, GiveWP, LearnDash, and more being wiped off the face of the planet.
Like many, I’m a paid customer of Kadence myself and never received any communication. We also have hundreds of clients who use Kadence. 🤔
The new landing pages (where things redirect) on Liquid Web honestly don’t look great. Well-known brands like Kadence and GiveWP just vanished overnight. They instantly lost their “soul,” is another way to put it.
Some of the original founders chimed in (Justin Ferriman, Matt Cromwell, etc.).
Katy Boykin wrote an in-depth post with everything that happened. I just think the whole transition was a disaster.
GeneratePress is building its own full-site editing experience on its own terms rather than adopting core’s implementation.
GenerateBlocks is launching a form builder feature for those who don’t need crazy complex forms. Kyle has an excellent overview (also make sure to check the pinned comment for a few corrections).
There is a discussion on adding the ability to create and register custom post types in WordPress core (#77600). 😮
WordPress market share has declined for six months in a row. I think it will be interesting to see where this is in a year or two. Need more data.
Last month, I mentioned the bug where certain WooCommerce Subscriptions were silently disabled. They have rolled out a new health tool you can use to check all your data. Shout out to Sybre for reporting the bug.
Starting July 1, Envato Market is increasing the author fee to 50%. 😨 This finally signals the end of selling WordPress themes on there exclusively (seems intentional with a price hike like that). You could argue they’ve been on a downward trend for a while now.
Kinsta is rolling out bot protection (in beta) so you can control how different traffic types are blocked or challenged on your site. 🚫
Easy Digital Downloads released a few great updates! Some of which we’re already using on our sites:
Magic links for returning customers. This saves us a few password reset support tickets each month.
New profile editor block. We’re pretty much all blocks now on our sites.
New company name field on checkout and integration with built-in invoices.
Also, somehow missed an update back in January. Their new log retention feature is excellent! These can add up quickly in the database. Love the granular options to automatically prune these.
WordPress.org profiles got a makeover! Still a few little quirks, but it’s looking more modern now.
Introducing RankReady, a new WordPress plugin built end-to-end for the AI search layer that you drop right alongside your current SEO plugin. I haven’t tried it yet, but it looks promising.
Marketing
How did they do it? I have to say, Pinterest nailed the marketing on this advertisement. 👏
FAQ rich results will no longer show in search, and the Search Console features will go away.
Google Search as you know it is over. AI overviews were one thing, but even more changes are coming.
Google Ads to require a passkey for certain sensitive actions after July 15.
Performance
There’s a new ReCaptcha alternative in town, which is great when it comes to performance. Introducing ActiveLayer from the Awesome Motive team. It has no CAPTCHAs and no front-end JS. ⚡ Some positive feedback is already rolling in (@slaFFik, @jkohlbach)
Gutenberg 23.1 got faster image uploads in terms of finalization in the editor. This will most likely get into core with WordPress 7.1 in August.
Looking for a new way to preload/warm your Cloudflare cache? You might want to check out the Super Preloader for Cloudflare plugin. Note: It does take a bit more configuration work to get up and going. See their blog post.
AI
I finally caved and got a Mac mini. This allows me to run all my AI-related tasks with pretty much full permissions without worrying about the security of my current setup. Also, my computer was starting to bog down, so now I can offload things. I’m pretty happy with the setup so far. I’ll post more about this later.
Codex now has a Chrome extension. Just like Claude, this now lets you access things like the DOM. Great for performance troubleshooting!
Claude Opus 4.8 was released. “Early testers report that Opus 4.8 is more likely to flag uncertainties about its work and less likely to make unsupported claims.” I hope this is true, as Claude's hallucinations have been pretty bad. I care more about this right now than simply more speed.
The Claude Platform on AWS is now generally available.
Rocket.net launches a new developer hub with full MCP integration to let you manage your WordPress site from tools like Claude, ChatGPT, etc. 🤖 InstaWP also rolled out MCP.
iOS 27 will let you pick Claude or Gemini instead of ChatGPT for Apple Intelligence.
Google released Antigravity 2.0. I still prefer Cursor for something like this.
Lots of layoffs from big names you might recognize, mostly AI-related. layoffhedge is a great tool to track these.
Cloudflare is laying off 21% of its workforce, around 1,100 people.
ClickUp is laying off 22% of its workforce, around 290 people.
Wix is laying off 19% of its workforce, around 1,000 people.
Claude got higher usage limits and a compute deal with SpaceX.
If you're in the Scottsdale, AZ area, hit me up, and we can grab lunch! 🥗👋



















Thanks for mentioning RankReady, Brian!
Would love to receive your feedback and suggestions whenever you try :)
As always, love your emails.