1.5.3 is a focused reliability release: settings that seed themselves on first load, first-image LCP eager loading and CLS dimensions across every theme, a real update-check server instead of a stub, and a handful of SEO cleanups (sitemap pagination noise, thin tag pages, a double-H1 bug).
What's Actually in 1.5.3
This is a reliability and SEO-hardening release, not a schema-markup overhaul. The headline changes: settings that seed themselves automatically, real Core Web Vitals improvements on post listings, a live update-check server, and a set of SEO cleanups across the sitemap and tag pages.
Settings Auto-Seed
ensure_default_settings() now automatically seeds site_name and site_alternate_name into the database on first page load, driven by a cache file so there's zero performance cost after the initial run. New sites no longer need manual SQL to get these values populated — and the migrations/5_seo_settings_seed.php migration distributes the same fix to existing installations through the standard update system.
LCP and CLS on Post Listings
The first post-card image on page 1 — the one most likely to be the page's Largest Contentful Paint element — now gets loading="eager" fetchpriority="high" across every bundled theme architecture, instead of being lazy-loaded like every other card. That's expected to shave roughly 200-500ms off LCP on a typical listing page. Alongside that, every post-card image now carries explicit width and height attributes, which removes layout shift from card grids entirely rather than just reducing it.
A Real Update-Check Server
api/updates/check.php previously returned a static stub response. It now queries the real UpdateManager against the database, with a graceful fallback if the connection fails — so "check for updates" in the admin panel reflects your installation's actual version state rather than a placeholder.
SEO Cleanups
- Sitemap pagination noise removed —
?page=2,?page=3, and similar paginated URLs no longer appear in the homepage, category, tag, and author sitemaps. Those thin pages were wasting crawl budget for no indexing benefit. - Thin tag pages now noindex — tag pages with fewer than 3 posts get
noindex, followviaoutput_robots_meta(), so nearly-empty tag pages don't get indexed as thin content. - Fixed a double-H1 bug — a markdown
# Headinginside post content used to render as<h1>, competing with the post title (already an H1). It now renders as<h2>.
Upgrade Notes
This release includes a database migration (migrations/5_seo_settings_seed.php), applied automatically through the standard update process — no manual SQL required. After updating, it's worth spot-checking a listing page to confirm the first card's image loads eagerly, and re-submitting your sitemap if you were relying on the old paginated sitemap entries for any reason.