jekcms 1.5.3: Auto-Seed Settings, Core Web Vitals, Update System & SEO Hardening

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).

jekcms 1.5.3: Auto-Seed Settings, Core Web Vitals, Update System & SEO Hardening

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, follow via output_robots_meta(), so nearly-empty tag pages don't get indexed as thin content.
  • Fixed a double-H1 bug — a markdown # Heading inside 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.

Order Today

One-time payment, lifetime access. Setup in 30 minutes.

View Pricing
  • Setup and live in 30 minutes
  • 14+ professional themes
  • n8n automation integration
  • Automatic SEO — Sitemap, Schema.org
  • iyzico payment support

Be the first to know

New features, release notes & CMS guides — a couple of emails a month, no spam.