Jonny Harris
spacedmonkey.bsky.social
Jonny Harris
@spacedmonkey.bsky.social
WordPress core committer. Working on the Times. Lover of open source.
If you want the full technical breakdown — and how hosts or cache providers might handle upgrade scenarios — read the announcement blog post on Make/Core.
👉 Full details: make.wordpress.org/core/2025/11...
Consistent Cache Keys for Query Groups in WordPress 6.9
Query caches have historically used the last changed timestamp as a salt. While this has proven effective for most sites, it leads to an excessive number of caches which can be problematic on high-…
make.wordpress.org
December 4, 2025 at 1:53 PM
This applies to nearly every query type: posts, comments, terms, users, sites, networks, and more.
The result: far better cache efficiency, fewer wasted objects, improved hit rates, and predictable behaviour under heavy load.
December 4, 2025 at 1:53 PM
From 6.9, cache keys stay consistent. The freshness check (via last_changed) now lives inside the cached value itself.
If the data is stale, WordPress overwrites the existing entry rather than creating a new key.
December 4, 2025 at 1:53 PM
Previously, query caches included last_changed inside the cache key. Every content update generated brand-new keys, leaving old entries stranded and wasting memory.
At scale, this meant caches filled up with unreachable data.
December 4, 2025 at 1:53 PM
Cover block images are a special case. They should really use an image tag but they don’t. They use a div with background image as it gives more css control.
August 18, 2025 at 4:43 PM
Have you ever used the alias_of term functionality in WordPress?

Or even heard of it?
Genuinely curious — reply and let me know. 👇 #WordPress #DevSurprises
July 1, 2025 at 8:56 PM
Apparently it was officially deprecated in WordPress 4.7 — yet it still works if you manually set it.

I can’t believe this was quietly lurking in plain sight all this time.
July 1, 2025 at 8:56 PM
It doesn’t show up in the admin UI.
There’s no core UI for managing aliases.
You have to dig into the DB or use code.
And it only works within the same taxonomy.
July 1, 2025 at 8:56 PM
You can even set alias_of via wp_insert_term() or when registering terms manually.

Internally, WordPress uses it to merge terms. Think of it as a soft-deprecated, under-documented feature from the multisite merge days.
July 1, 2025 at 8:56 PM
Turns out there’s a alias_of parameter for taxonomy terms.

It’s meant to point one term (e.g. a tag or category) to another — so when you access the alias, it loads the main term instead. Essentially a redirect, at the database level.
July 1, 2025 at 8:56 PM
I am not even in Europe right now, I am in Canada. I think that law of physics requires me to half a word away. Crazy. Hopefully next time!
June 8, 2025 at 1:34 PM
You went to WCEU?!? The one bloody WCEU I miss!
June 8, 2025 at 1:20 PM
It can be used with delicious brains background processing. I would look at using WP cli to run your scheduled tasks, once a minute using a real cron on your server.
June 2, 2025 at 7:54 PM