jekcms 2.0.1 — A Major Admin Panel Refresh

jekcms 2.0.1 rebuilt the admin design language, added draft autosave and anonymous preview links, brought word-level revision diffs, and fixed a critical Turkish slug bug that had corrupted 866 slugs across our sites. Here's the real changelog, in plain language.

jekcms 2.0.1 — A Major Admin Panel Refresh

jekcms 2.0.1 rebuilt the admin design language, added draft autosave and anonymous preview links, brought word-level revision diffs, and fixed a critical Turkish slug bug that had corrupted 866 slugs across our sites. Here's the real changelog, in plain language.

jekcms 2.0.1 is a real admin UI release: a unified design language across the admin, autosave that actually saves your work, and a slug bug fix that mattered more than anything cosmetic in this release. Here's what actually shipped.

A Unified Admin Design Language

The admin panel got a consistent visual system instead of ad-hoc styling per screen: a badge system with five pill variants (success, danger, warning, info, neutral), redesigned stat cards with colour backgrounds and decorative SVG accents, outline-style quick-action buttons, and a shared "state block" component for empty and error states so those screens stop looking like afterthoughts.

Draft Autosave, For Real

The post editor now saves every 30 seconds automatically, with a localStorage fallback if the save request fails or you go offline. A status pill in the corner tells you exactly where things stand — "Saving…", "Saved · 15:42", or "Offline" — and if you reopen a post with unsaved local changes, you get a prompt to restore them instead of silently losing your last few minutes of editing.

The editor can now generate a preview link — preview.php?token=..., backed by a 48-character secret token stored in post meta — that lets anyone with the link view a draft without an admin account. Click "Preview Link", the URL is copied to your clipboard automatically, and an orange banner on the preview page makes it obvious you're looking at unpublished content.

Revision Diff

Clicking a past revision now opens a word-level diff instead of a wall of raw text — additions highlighted, deletions struck through — so you can actually see what changed between two versions before deciding whether to restore one. Restoring takes an automatic snapshot first, so reverting a revision is itself reversible.

Smaller Editor and Listing Improvements

  • Word count distribution on the dashboard — a stacked bar showing how your posts break down across length buckets (0-500, 500-1K, 1K-1.5K, 1.5K+ words)
  • Date range filter on the post listing, with native date pickers for a from/to range
  • Media grid/list toggle in the library, with your preference remembered between visits
  • TR/EN language toggle in the admin header, session-based, that persists as you navigate between screens

The Slug Rebuild Tool

A new admin/tools/rebuild-slugs.php tool lets you regenerate slugs in bulk with a dry-run preview and conflict handling, plus a CLI mode for batch operations across many posts at once. This tool exists because of the bug below — it's how affected installs got their slugs repaired.

The Critical Fix: Turkish Slugs Were Silently Breaking

This is the one that actually mattered. mb_strtolower() was converting the Turkish capital İ (U+0130) into composite character sequences before the transliteration map ran, which left orphaned bytes that turned into stray hyphens in the generated slug. The fix reorders the pipeline — strtr() with a comprehensive Turkish + extended Latin character map now runs before lowercasing, not after. Running the fix across our own sites repaired 866 slugs that had silently been wrong.

If you publish in Turkish, this is worth checking on your own installation even if you never noticed a problem — a broken slug doesn't throw an error, it just quietly generates an ugly or duplicate URL.

Other Fixes in This Release

  • A 4px sidebar misalignment caused by a stale CSS variable value
  • Round "blob" buttons on the profile page caused by a border-radius rule that shouldn't have applied there, plus a hardcoded English "Active" label in the Turkish admin
  • Unstyled thumbnail size inputs in Settings, now with proper padding and a focus ring
  • An obsolete placeholder logo replaced with the current one, consistently, in the sidebar and on the license screen
  • Inconsistent status pill styling on the Updates page, and raw English error strings that were leaking into the Turkish admin

How to Update

From the admin, open Version Manager and pull 2.0.1 with one click. The update is backward-compatible — your posts, categories, and settings carry over as-is; the only content-affecting change is the slug fix, which only touches slugs that were already broken.

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.