Changelog

Release Notes

Every feature, every improvement, every fix since v1.0.0.

Page 3 of 24 - 710 releases, newest first.

v2.145.9

Product reviews pass the Rich Results Test

  • Product reviews were failing Google’s Rich Results Test. Every review page carried an offer block with no price, and Google rejects that: an offer has to state a price. The page was being judged as a merchant listing, which is the wrong category for a site that reviews products rather than selling them. Reviews now publish as product snippets, which is the category they belong in, and the star rating still shows. When you do enter a price, the offer is published in full with currency, validity date, condition and seller, so that path passes too.
  • The review score was being published twice, once as a self-awarded average. A page with no reader votes still claimed an average rating of one vote, which was the site rating itself. Search engines treat that as self-serving. The editorial score now travels as what it is, a signed review, and the average rating appears only once real readers have voted.
  • Product images were published as site-relative paths instead of full addresses, and only the main image was sent. Gallery images now go out too, as full addresses.
  • A review is now signed by its author. The writer’s name, the publication date, the last update and the verdict text are all published with the review, instead of an unnamed company byline.
v2.145.8

Affiliate theme: build the review page block by block

  • The product review page can be built block by block. Customize → Post page now carries a switch and a design picker for every part of a review: the quick verdict box, the thumbnail strip, key features, pros and cons, specifications, the FAQ, the video, the final verdict panel with its score bars, the reader rating and the save-for-later box. Each design picker shows a small preview of what you are choosing, so nothing has to be saved to find out what it looks like.
  • Quick verdict box. A review can open with a summary card that lists the score, who the product suits, the standout feature and the price range, so a reader who only wants the answer gets it in the first screen. It can also run as a full-width strip, or be switched off.
  • Save-for-later box. An invitation under the article to pin the review to a Pinterest board, in a wide or a narrow design. It appears on blog posts as well as reviews.
  • Buy card contents are now optional. Customize → Sidebar can switch the score, the price, the share buttons and the newsletter form in the sticky buy card on and off separately.
  • The headline no longer has an empty half. On the home page the category cards now sit beside the headline as a two-column tile set, each in its category colour, instead of running as a separate strip underneath. A switch in Customize → Homepage puts them back in the strip.
  • Homepage spacing and motion. The space between homepage sections is now a slider, the review counts on category cards can be hidden, and the lift that cards make on hover can be switched off for a calmer page.
  • Author box rebuilt. It now shows the writer's job title, the subjects they actually cover on the site and their social profiles as icon buttons, next to a full-size portrait. The job title was being read from the database but never printed, so every author box was missing it.
  • Affiliate theme: the site icon, the web app manifest and the structured data block were missing from this theme's pages. The tab showed no icon and search engines received no JSON-LD. The other fourteen themes already printed all three.
  • Affiliate theme: hovering a key-feature card cut off its top edge, because the grid around the cards was clipping anything that moved outside it.
  • Affiliate theme: an opened FAQ answer sat flush against its question with no space between them.
v2.145.7

New positioning: a next-generation, smart CMS

  • New positioning: a next-generation, smart CMS. The home page headline, the site tagline, the meta descriptions, the admin login screen and the license screen now say the same thing. jekcms was described everywhere as a blog CMS, which undersold it: the same core runs news sites, review and affiliate sites and company sites, and the wording no longer narrows it to blogs.
  • Marketing site typography. Every long dash used as a separator was replaced with a plain hyphen across the site, including the changelog and the blog, so the copy reads the way a person writes rather than the way a machine does.
v2.145.6

Affiliate theme: 3:4 product images, rebuilt related block and styled sidebar widgets

  • Affiliate theme: product images are now 3:4 everywhere. Review cards, the product header and its gallery, the score board, the most-read list, related reviews, blog cards and the article cover image all use the same portrait ratio, so a grid no longer mixes square and landscape crops.
  • Related reviews rebuilt. The "You might also love" block now uses the same card design as the home page, with a score badge, verdict, rating and price, and falls back to article cards when there are no other products in the category.
  • Sidebar widgets are styled. The author card, table of contents, share card, recent posts, categories, tags and newsletter widgets all render as proper cards in this theme instead of unstyled text.
  • Author box and reaction bar redesigned. The author box sits flush in the article column with a solid accent avatar, and the reaction bar now renders inside the content column as a centred card instead of spanning the page.
  • Affiliate theme: the product cards carried a comparison button that led nowhere, and the theme script printed debug output to the browser console. Both are gone.
v2.145.5

Affiliate theme: redesigned product review page

  • Affiliate theme product review page redesigned. The header now pairs a square product shot with a gallery, a score badge and a card that holds the price and store buttons, next to the title, brand and model, the score with stars, the one-line verdict, the review meta and sharing. Below it an at-a-glance strip shows rating, who it is for, the key highlight and price, and the jump bar carries a buy button. Key features are numbered cards, pros and cons are colour-coded panels, specifications are a two-column grid, the FAQ is an accordion, and the final verdict is a dark panel with the score, per-criterion bars and the call to action. Product videos from YouTube or Vimeo now get their own section, and the sidebar card shows the product thumbnail, score, price, buy button and other stores.
v2.145.4

Affiliate theme: redesigned footer

  • Affiliate theme footer redesigned. A navy footer with the brand block and social buttons on the left, four link columns with accent headings (categories show their review counts), a trust strip with review count, category count, average score and an "independent testing" note, the affiliate disclosure in its own labelled row, and a bottom bar with copyright, platform credit, light/dark switch and a back-to-top button. Fully responsive and styled for both light and dark mode.
v2.145.3

Affiliate theme: modern home page with most-read and score board

  • Affiliate theme home page redesigned. Latest reviews now sit in a bento grid with one large lead card and scored cards (rating badge, one-word verdict, stars, price and a "Check price" button); a new "Most read" section ranks the six most-viewed reviews with a numbered lead card and list; a "Highest scores" board shows the top-rated products with their badges; category cards, best-of lists and blog articles use the same modern card language, and every section has a consistent header with subtitle and "View all" link. All sections are toggled and ordered from the Layout Studio.
  • Affiliate theme: blog articles rendered with a wide share column and a narrow text column; the article layout now keeps its 60px share rail and full-width text, and the author box shows the large avatar next to the bio.
v2.145.2

Affiliate theme rebuilt on the original ReviewPanel design

  • The Affiliate theme now carries the full ReviewPanel design. Home page with product slider, headline block, category strip, latest-review cards, best-of lists, blog grid, newsletter box and the "How we review" process; product pages with the framed image header, store buttons, score, quick verdict box, key features table, pros and cons, specs, FAQ, final verdict and a sticky buy box; category pages with subcategory cards, sort bar and review cards; matching blog, author, search, legal and error pages. Light and dark mode, per-category accent colours and the full-screen mobile menu are all included.
v2.145.1

Footer columns pick any menu; newspaper footer shows the legal pages

  • Footer columns can now show any menu you created. In Appearance → Footer, a menu column offers every menu from the Menus page, not only the ones assigned to a location, so a four-column footer can carry a different menu in each column.
  • The newspaper footer no longer hides the legal links. Privacy Policy, Terms of Service, Cookie Policy and similar pages were missing from the newspaper footer entirely; they now appear in the bottom legal row, and a link already shown in a column is not repeated there.
v2.145.0

Affiliate theme: product hero, scored cards, best-of lists, jump-to strip and sticky buy box

  • Affiliate theme - the 15th theme. Built for product review and affiliate sites: a product hero with score, quick verdict and store button, a top-rated grid with rank and score badges, best-of list cards, a sticky "Jump to" strip that follows the post's headings and product sections, and a sticky buy box in the sidebar. Warm pink and navy, DM Sans, sharp corners; every colour follows the customizer.
  • Accent colour per category. Post and category pages can take a fixed accent colour per category, automatically or from a slug-to-colour map in Appearance → Colours. Turn it off and every page uses the primary colour.
  • Product Reviews plugin works out of the box with the theme. Post cards show the score, the plugin's boxes take the theme's palette and corners, and the footer carries the affiliate disclosure from Product Reviews → Settings. Without the plugin the theme runs as a regular blog theme.
v2.144.0

Product Reviews plugin: scores, pros and cons, best-of lists, comparisons and tracked store buttons

  • Product Reviews plugin. Turn any post into a product review: score with breakdown, one-line verdict, who it is for, pros and cons, key features, spec table, FAQ and badges such as Editor's Choice. Store buttons carry your Amazon tag automatically, go through click-counted links when the Affiliate Links plugin is on, and every box prints the affiliate disclosure Amazon requires.
  • Best-of lists and comparison tables. Rank products into a "Best of 2026" list with badges and notes, or put two or three products side by side with their shared specs, scores, prices and buttons. Both are shortcodes you can drop into any post or page.
  • Reader star ratings and rich results. Readers rate a product in one click; the average feeds Product and Review structured data together with your editorial score, so reviews can show stars and prices in search results.
v2.143.2

No more "setting changed" banner after updates; page editor shows only fields in use

  • The dashboard no longer shows a "1 setting changed in the last 15 minutes, undo?" banner after updates. The system's own flags were tripping it, so a site you never touched greeted you with a warning after every update. The banner is gone; settings history and undo live on their own page.
  • The page editor now lists only the fields your site actually uses. It used to offer 180 fields across the marketing pages, and 143 of them were read by nothing, so an edit there changed nothing on the site. Those fields are gone; what remains is exactly what the pages render.
  • Reports and the dashboard no longer break on installs without the social plugin or with an older newsletter table. The Reports page adapts to whichever subscriber timestamp column exists, and the social pipeline widget only links to the plugin when it is installed.
v2.143.1

Lapsed licences keep full updates; free-key link on activation; settings history shows only your changes

  • A lapsed licence keeps receiving full updates, theme updates included. Your premium theme keeps running after your licence lapses, so it now keeps getting its updates too instead of drifting away from the core. Plugins, AI and the customizer stay off until you renew; the licence page now shows where to renew and how quickly your rights return.
  • Free edition: the activation screen now says where to get your free key. Updates need a licence key; a free one comes from your jekcms.com account, and the link is right on the screen.
  • Settings history now shows only the changes you made. The system's own timestamps and version records used to fill the list with dozens of entries and carried an undo button that could roll back internal state. They are no longer recorded, listed or undoable; what remains is your own changes with a real undo.
v2.143.0

Partner Program 2.0: share-link attribution, channel stats, commissions on renewals, in-panel agreement

  • Your share link now earns commission on its own. Anyone who arrives through jekcms.com/p/YOURCODE and pays within 30 days is credited to you, even if they never type the coupon.
  • Channel-tagged links and a 30-day click chart. Create a separate link for YouTube, Instagram, X, your blog or any custom tag; the panel shows clicks, sales and conversion per channel, plus a daily chart.
  • Renewals and upgrades earn commission too. A customer you referred stays yours: their licence renewals and plan upgrades are credited to you at the same rate. Installation, migration, hosting and care services stay fixed-price and outside the commission base.
  • Accept the Partner Program agreement in your panel. The full text is shown in the panel; one click records the version, date and IP, and a copy of the text is e-mailed to you. When the text changes, the panel asks again.
  • Partner commissions are calculated on the licence only. Services are left out of the commission base, in line with the promo-code rule.
  • Services are sold as their own products on the payment side. A service bought on its own is charged at its own list price under its own name on the invoice.
  • Partner Program Terms updated. Link attribution, coverage of renewals and upgrades, and the fixed-price rule for services are now spelled out in the terms.
v2.142.4

Promo codes at checkout - for licences only, never for services

  • Enter your promo code on the checkout page. The discount shows in the order summary before you pay, so the total you see is the total you are charged. Codes apply to the licence only; installation, migration, hosting and care services are always at list price.
  • Each service can have its own product on the payment side. A service bought on its own is charged as that product at its own price; a service bought together with a licence is added to the licence payment.
v2.142.3

Clearer “after payment” steps, and your checkout note travels with the order

  • “What happens after payment” now reads as a timeline. Three numbered steps with a timing label each - right away, in 30 minutes, within one business day - so you know what to expect before you pay.
  • The note you leave at checkout reaches the team with the sale. Whatever you write in “Anything we should know?” is now in the sale notification e-mail as well as on the order page, so the person doing your installation sees it first.
v2.142.2

The checkout page keeps your language and reads more clearly

  • A clearer checkout. A step strip shows where you are (account, order, secure payment, licence), the plan card lists what is included, and the agreement box, the pay button with the live total, and the security notes now sit together in the order summary. A short “what happens after payment” list closes the summary.
  • Coming from the Turkish pricing page, the checkout opened in English, and the TR button led to a missing page. The site header worked out the language from the address, and checkout addresses carry no language part. Checkout now follows your portal language, and the EN/TR buttons switch it in place.
v2.142.1

The Buy button works when you are signed in, and the service cards match the plan cards

  • The service cards under the plans now use the same layout, type and price style as the plan cards, with a shorter, scannable list. Each card also offers a Telegram button when a group link is set in Settings.
  • The Add-on Services screen in the admin panel lists the catalog and the job queue in the standard table layout.
  • Signed-in visitors could click Buy and nothing happened. The pricing page is served the same to everyone, so the button always tried to open the sign-up window - and for a signed-in visitor that window is not on the page. The button now goes straight to checkout when you are signed in and opens the sign-up window only when you are not.
  • Writing to us about a service now starts with the right subject. The contact form opens with Sales selected and a short message naming the service you clicked, so you do not choose it twice. The Enterprise card does the same.
v2.142.0

Installation, migration, hosting and monthly care - added at checkout

  • Four services you can order with your licence. Installation on your own hosting ($49), installation with WordPress migration ($99), jekcms Hosting ($99 a year) and Monthly care ($49 a month). Each is done by the jekcms team; the pricing page explains what is included and how long it takes.
  • A checkout page that shows your order before payment. Buying a plan now opens a summary of your account and plan with the services listed beside it. Tick what you need, the total updates as you go, then continue to secure payment as before. Nothing is charged until you complete the payment.
  • Services you bought appear in your customer portal. A new Services page shows each one with its status - waiting, in progress, completed - and the next step. Your order confirmation e-mail lists them too, along with what happens next.
  • Existing customers can order a service on its own. No new licence is needed; the Services page in the portal takes you straight to payment.
  • Buying now asks you to sign in first. The Buy button opens the sign-in or sign-up window and brings you straight back to your order afterwards, so every order is tied to your account from the first step.
v2.141.4

The SEO watcher no longer raises an alarm every time you publish

  • Publishing a post could trigger a critical SEO alert. The watcher sampled your newest post, so each new post moved that sample to a different page and the two pages were compared as if one had changed into the other - a “canonical moved” alarm with nothing actually wrong. It now watches your most-read post and only ever compares a page with itself.
  • A growing sitemap was reported as a change. Every new post raised “sitemap 34 → 35”, and the same site-wide notice was repeated once per sampled page. The sitemap count now only counts when it drops by a meaningful amount, and site-wide checks are reported once.
  • The alert was hard to read and easy to lose. The panel strip printed the raw log line, and the “Review” link cleared the alert without ever showing its contents. The strip now says what changed in plain language, and the SEO Status page lists the full finding before dismissing it.
  • Older sites still described every page as “Welcome to our blog”. The fresh-install fix in 2.140.1 did not reach sites that were already running; that placeholder is now cleared on existing installs too, so pages fall back to the description you wrote.
  • The editor showed “Index, follow” for posts that were actually hidden from search. Sample posts are seeded as no-index so that identical text across thousands of sites is not treated as duplicate content, but the stored value did not match the editor’s options and the wrong choice appeared selected. The editor now reads the value correctly and says plainly when a post is hidden from search engines.
v2.141.3

Online purchases now issue the one-year licence the pricing page describes

  • Form attachments reject a few more script-type extensions on every setting, and pruned spam submissions take their attachments with them.
  • A licence bought online was issued without an end date and with six months of support. The annual model applied only to licences created by hand; the checkout path still wrote the old open-ended licence. A licence bought online now carries its one-year term, and support runs for that same year, exactly as the pricing page says. Licences already issued are left as they are.
  • Renewal reminders could arrive twice in the same minute. The 30-day and 7-day reminders both matched a licence that had received neither, so a recently sold licence got both e-mails at once. The two windows no longer overlap, and a licence that lapsed long ago is no longer told today that it has just lapsed.
  • The pricing page footnote still described the old model. Under the plan cards it said the licence was permanent and updates free forever; the contact form's automatic reply spoke of six months of support. Both now describe the annual licence with support included.
  • Legal page section numbers were doubled. The generated privacy and terms texts already number their headings; the table of contents added its own number in front, producing “1. 1. Scope”. One number now.
  • A lapsed licence screen called your plan “Free”. When the term ends the server lowers the rights to the free tier, and the panel showed that tier name instead of the plan you bought. It now names your plan, so you know what you are renewing.
v2.141.2

Theme previews show the current image, at the right proportions

  • Theme previews in your panel could stay months out of date. The preview image is cached for a year and its address never changed, so once your browser had a copy it kept showing it - a theme could be redesigned and your Themes page would still show the old screenshot. The address now carries a stamp that moves, so a new preview reaches you within the hour.
  • The theme card was scrolling the wrong part of the preview. Each card reveals a tall screenshot by sliding it, and that slide was calculated from one fixed size assumed for every theme. A taller screenshot never showed its lower half; a shorter one slid past empty space. The proportions are now read from the image itself.
  • The setup wizard had the same stale previews. Its theme cards carried no stamp at all, so a first-time installer could be choosing from screenshots that no longer matched the themes.
v2.141.1

The contact page names its departments in your language

  • On the trends theme, the contact page listed its departments in English whatever language the site was in. Those three names are yours to write, but until you do the page falls back to its own list - and that list was fixed English text, so a Turkish site greeted visitors with “Editorial desk”, “Partnerships” and “Support”. The fallback now follows the site language.
v2.141.0

Forms accept file uploads, and newsletter sign-ups actually reach you

  • Form fields can now be file uploads. A CV, a scanned invoice, a screenshot - you set which extensions you accept and the size limit, per field. The file is checked three ways before it is kept: the extension must be on your list, the content must actually match that extension, and executable or script types are refused outright no matter what you allow.
  • Uploaded files are private, not public. They go into a folder that is closed to direct access, under a random name, so the address gives nothing away about who sent it. You download them from the submission screen in the panel, and the notification email carries that link rather than the file itself.
  • On one theme a newsletter sign-up never reached the site at all. The travel theme's form waited a second and a half and then said “Subscribed!” without contacting the server once, so every address typed into it was lost.
  • Newsletter forms had no bot trap. The server has looked for one for a long time, but no theme - and not the plugin's own embedded form - ever printed the field, so that check simply never ran on this channel. It is now in place everywhere. Deliberately without the timing check that goes with it: that one measures how fast the form was filled in, and someone who types their address quickly would have been dropped without being told.
  • A successful sign-up could report failure. Two themes asked the server for a page and then tried to read it as data; the read failed, so visitors who had in fact just subscribed were shown an error and typed their address again.
  • The instruction that matters most was being thrown away. A sign-up is only finished when the visitor confirms it by email. One theme replaced that sentence with a two-second “Success!” on the button, so nobody learned there was a second step - and those sign-ups stayed pending forever.
  • Sign-up replies came back in Turkish on English sites. Every message in that flow was fixed Turkish text, whichever language the site was set to.
  • The contact form on two themes submitted to an address that did not exist. Filling it in and pressing send produced a 404 page and the message was gone - no copy stored, no email sent, and nothing to tell the site owner it had happened.
  • Opening a form submission showed the form editor instead. The button on the submissions list left out one parameter, and that button is the only way into a submission, so messages could be listed but not read.
v2.140.1

A site with no posts yet now looks finished instead of broken

  • An empty homepage used to show nothing at all. On some themes the header ended and the footer began with not one line in between, because every homepage section quietly renders nothing when there are no posts. A visitor landing there had no way to tell the site apart from a broken one. Every theme now says so plainly, and the themes that already had their own wording keep it.
  • The footer could float in mid-page. On nine of the fourteen themes, a page shorter than the screen left blank space below the footer - measured at 365px on one theme. It only ever showed on short pages: an empty site, a 404, a search with no results, a single short post.
  • Empty boxes are no longer drawn. A sidebar widget with nothing to show still drew its container, and a footer column with an empty list still printed its heading. Both now stay out of the way until they have something to say.
  • Every fresh install used to publish an English placeholder as its description. Regardless of the language you chose, every page carried <meta name="description" content="Welcome to our blog"> until you changed it - the line Google is most likely to print under your title in search results. New installs now use the description you typed during setup.
  • One theme's colours contradicted its own design. The Tech theme's colour settings shipped with a light background, dark text and an indigo accent, while the theme itself is dark with a green accent. Since the settings win, the wrong accent was what you actually saw.
  • The news theme's info bar overflowed on phones. Its narrow-screen rule was written for a grid layout that was never there, so it never applied.
v2.140.0

The panel now tells you whether your site can appear in Google's AI answers

  • Three new rows on the SEO health screen answer a question the panel used to get wrong. Google's AI answers - AI Overviews and AI Mode - are fed by ordinary Googlebot and by whether your pages allow snippets. There is no separate AI crawler behind them. That eligibility now has its own line, read from your live pages and your live robots.txt rather than from the setting you saved.
  • Gemini access is shown separately, because it is a different thing. The Google-Extended token governs the Gemini app and nothing else; blocking it does not remove you from Google Search or from AI answers. The two used to sit under one heading, which made it easy to switch off the wrong one.
  • Rules written outside the CMS are now visible too. Your CDN or firewall can add its own robots.txt rules - Cloudflare's "block AI crawlers" option does exactly that. The same crawler then ends up with two entries, one allowing your site and one blocking it, and which one wins depends on the crawler. Instead of reporting your saved setting as if it were the live result, the panel names the crawlers this applies to.
v2.139.1

The renewal price now appears everywhere you look, and the panel tells you where you stand

  • Your panel now says where your licence stands. A licence coming up for renewal, or one that has lapsed, gets a strip at the top of the dashboard and on the licence card - with what is still working, what is switched off and a renew button. Before this, the dashboard only tracked the support period: it said "your support ends" while staying silent about the licence, and a lapsed licence produced no message at all.
  • The panel no longer offers a plan that is not for sale. The customer panel still listed the Unlimited tier and an "upgrade to Unlimited" button, while the pricing page had already moved that tier to a conversation. Those buttons led to a checkout that no longer exists.
  • An expired licence no longer sent you to the activation screen. Opening the licence page on an installation whose term had ended showed the first-run "enter your key" screen instead of your licence details.
v2.139.0

The licence is now annual - and if you stop renewing, your site keeps running

  • Renewal reminders and a renew button where you would look for one. Thirty days before the licence ends, seven days before, and on the day it lapses, one e-mail goes out - and each one says plainly that the site keeps running. The same notice appears on the licence card in your account, with a renew link. Lifetime licences never receive any of it.
  • Renewing extends the licence you already have. A renewal adds a year to your existing key and to your support period; it does not issue a second key that you would have to activate on your site all over again. If your licence is one of the lifetime ones, a renewal only extends support and leaves the licence untouched.
v2.138.0

Your site starts out looking like the demo, not like an empty folder

  • Every theme now ships its own demo content. Until now a fresh installation seeded nine general "how to use jekcms" posts, whatever theme you picked - so somebody installing the Recipes theme opened their new site and found an article about how tags work. Each of the fourteen themes now carries its own set: three categories and nine real posts written for that subject, with tags, a menu and cover images. Pick Recipes and you get recipes with ingredients and steps; pick Travel and you get packing and border-crossing guides. The installer asks whether you want it, and one click under Posts removes all of it whenever you are ready to publish your own work.
  • Covers are generated in your theme's colours. The demo images are not stock photos and they are not shipped inside the package - they are drawn during installation from the palette the theme declares, so the front page looks composed rather than assembled from placeholders, and the download does not get any bigger.
  • Changing your theme can now bring its content with it. If the demo content on your site belongs to a theme you no longer use, the Themes screen offers to replace it with the new theme's own. Your own posts are never touched - only the demo set is swapped.
  • Turkish words came out half-capitalised. Themes used PHP's plain uppercase function, which only knows the English alphabet: Günlük became GüNLüK, Fırın became FıRıN. Category chips and section labels read as broken text rather than design. Turkish also needs i to become İ, which the multibyte function gets wrong on its own. Uppercasing is now language-aware everywhere, and the single-letter avatar badges - which were cutting the first byte of a name, so Şule became a broken character - take the first letter properly.
  • Some theme menus and buttons led to pages that were never there. A few themes linked to addresses that are not routes in jekcms at all - the Travel menu offered Destinations and Travel Tips, its homepage map linked five continents, the Pets footer and search offered six pet categories in English, its sidebar had an adoption button, the Newspaper photo section linked a tag, and the Recipes newsletter checkbox pointed at a terms page under the wrong path. On a site that does not happen to use those exact names - which is every fresh install - all of them answered 404. Each one now points at something real, or is not shown at all.
  • Every card on a brand-new site read “0 views”. The view counter was printed whenever the field existed, and on a fresh install it exists and it is zero - so the first thing anyone saw was a grid of zeros, which says nothing and makes the site look abandoned. The counter now appears once a post actually has views. Nothing is invented and no number is rounded up; a post with no views simply does not carry the label.
  • Sections left a hole when a category only had a few posts. On the Newspaper theme the category blocks and the latest-news row were built as a fixed four-column grid. A category with three posts filled one column and left three empty, which is exactly what a new site looks like - every category starts with three. The rows now take as many columns as they have cards, and a lone card becomes a full-width horizontal one.
  • Tag links on the Pets theme ignored the theme's own colours. They were drawn in a purple-to-indigo gradient that cycled through five more unrelated colours, which had nothing to do with the theme. They are quiet now and pick up your accent colour on hover. The author initial badge on the Starter theme had the same problem: it mixed your theme colour with a fixed purple, so it drifted violet whichever theme you chose.
  • The welcome post showed up as the lead story on your new site. Installing a theme demo set also seeded the post that greets the site owner - “your site is ready, edit or delete this to begin” - and on most themes it took the top card. So the first thing a visitor read was a note addressed to you, sitting above nine real articles, next to a leftover “General” category the theme never asked for. The welcome post now appears only when there is nothing else: a theme with no demo set, or demo content switched off.
  • Categories with no posts were listed in menus and footers. The navigation lists were built from every category on the site, so an empty one - the default bucket, or one you made and have not written in yet - was offered as a link and led to an empty archive. Some themes had tried to hide it by matching names (“uncategorized”, “general”), which misses a category you renamed and misses your own empty ones entirely. Every theme now lists the categories that actually have posts.
  • Skipping the theme step left you with the blank scaffold. If you did not pick a theme in the installer, the site was set up with starter - the empty base theme meant for building on, which is deliberately left out of the demo gallery. So the people least sure of what they wanted got the barest possible result. The installer now falls back to a real showcase theme; starter stays on the list for anyone who wants it.
  • Authors imported from WordPress had a broken avatar. The importer asked Gravatar to return an error when an address had no picture, and then stored that address anyway - so every imported author without a Gravatar account showed a broken image on every page. They now get the standard placeholder.
  • Choosing which categories to feature emptied their images. On themes with a category circle row, the images disappeared as soon as you picked the categories by hand instead of leaving the automatic selection. The row worked until you customised it - which is when most people look at it.
  • The nine demo covers were nearly identical to each other. They now vary in brightness and warmth while staying in the theme's colour family.
  • The Turkish installer showed a raw escape sequence instead of an apostrophe on the WordPress import card.
v2.137.0

Your site now tells you the moment it falls out of search

  • A watch that notices when your SEO signals break - at the moment they break. A site can drop out of Google quietly. A theme change, a plugin you switched on, a customiser save: any of them can flip a page to noindex or close the whole site in robots.txt, and nothing tells you. jekcms now takes a fingerprint of your home page, your newest post and your busiest category - the title, the canonical address, both robots signals, the structured data, the language links and the sitemap size - and compares it against the last one. It runs right after a theme switch, a plugin change, a core update and a customiser save, and once a day besides. When something changes, the panel says what changed, on which page, and what it means in plain words: this page has dropped out of search, not robots_meta differs. No external tool can do this, because no external tool is inside your installation watching the change happen.
  • One switch decides whether search engines may index your site. Three separate signals tell a crawler whether it is welcome: an HTTP header, the robots.txt file and a tag in the page itself. Google obeys the most restrictive of the three, and two of them are invisible when you look at the page. They used to be set independently, which meant they could disagree - and a site could be closed to Google while its page source said it was open. They now all come from a single setting, so disagreement is no longer possible.
  • Panel screens get to the point. Some screens opened with several paragraphs explaining themselves before showing a single row of your own data. On the worst of them you scrolled past about twelve hundred characters of explanation to reach the first result. The explanations have not been deleted - they moved. Each screen now opens with one sentence, and the full account sits behind the ? next to the heading, or a fold you can open. On the Trending Content screen the distance from the title to your first result dropped by more than a third.
  • The Audience screen only warns you when there is something to do. It used to carry a permanent notice explaining how the audience is gathered, whether or not anything needed attention. That explanation is now in the help bubble, and the notice appears only when the list has never been built or has gone stale - the case where you actually have to press something.
  • A documentation page for the News Publishers screen. Getting into Google News, Apple News or Microsoft Start is twenty-two separate applications, each with its own review queue. The new page explains the readiness checklist, what the three tiers mean, and which publisher details reviewers look for - including the corrections policy most publishers forget.
  • Choosing Recipe or Local Business as a post's structured data broke the page. The post returned a server error instead of rendering - the setting was selectable in the panel, and selecting it took the page down. Both types now render, and every type the panel offers is checked against the live page before each release.
  • The How do I use this button was missing from four screens, and on another it led to a page that does not exist. It is now present on the Licence, SEO Status and News Publishers screens, and the link that went nowhere has been removed. On the Advanced SEO panel it had never appeared at all, because the tool is shown inside a frame there.
  • The update badge in the sidebar was drawn in a colour that does not belong to jekcms.

Get your site live

The setup wizard gets a site live in about 30 minutes. See the prices and the free edition.

View Pricing
  • Setup and live in 30 minutes
  • 15 ready-made themes
  • AVIF/WebP image optimization
  • Automatic SEO - Sitemap, Schema.org
  • Cookieless built-in analytics (ZeroTrack)

Be the first to know

New features, release notes and CMS guides. We send a couple of emails a month.