Serenity Virtuemart Template Changelog
- Change Log:
- Release Date:
2026-10-29, Version:
5.4.10.5, Notes:
The shop menus stay open while you move into them. Hovering Categories or Using Joomla! opens a wide menu panel 25 pixels below the menu bar. The template’s original menu script kept a panel open while the pointer crossed that gap; the Joomla 5 version opens the panels with CSS alone, so once the pointer left the menu item the panel jumped off the side of the screen at once and could not be reached. (The template already delayed the panel’s vertical move, but it hides a closed panel by moving it sideways, and that still happened immediately.) The panels now wait half a second before closing — long enough to move into them — and close normally once the pointer leaves.
The error page no longer shows server details. Some errors — for example a link to a news feed that does not exist — printed Joomla’s internal error message on the public error page, and that message contains the folder path of the site on the server and a programmer’s stack trace. Unless the site is in debug mode, the page now shows Joomla’s standard “An error has occurred” message instead, with the same status code. Separately, a link to an article or contact that does not exist (by its number) now gets the template’s 404 page; before, it could end in a 500 server error.
- Release Date:
2026-10-19, Version:
5.4.10.4, Notes:
Template Options screen. The icons on the template's Options screen came from Font Awesome 4.6.3 on MaxCDN, which no longer serves it, so they were missing. They now load Font Awesome 6.5.2 with its version 4 name shims from cdnjs.
Quickstart. Joomla's Language Overrides search list shipped filled with several thousand strings indexed on the original developer's computer, file paths included. It is now empty; Joomla fills it again when you refresh it in Language Overrides.
- Release Date:
2026-10-19, Version:
5.4.10.3, Notes:
Security. The template's menu layouts printed a menu item's note and link exactly as entered, so markup typed into a menu item's Note or Link field reached the page. Both are now escaped, as Joomla's own menu layouts do.
Colours with transparency. A colour chosen with the colour picker's opacity slider (saved as an 8-digit colour such as
#rrggbbaa) was replaced with black. Colours with transparency are now used as chosen. - Release Date:
2026-10-16, Version:
5.4.10.2, Notes:
Store owners. The account page no longer shows an error when a store owner or vendor is logged in.
Cart. The cart icon always shows how many items are in the cart, not only on mouse-over.
Phones. The show-password button stays on the same line as the password field.
Articles. The Previous and Next buttons sit at opposite ends of the article.
Categories. The category description no longer has side padding.
- Release Date:
2026-10-15, Version:
5.4.10.1, Notes:
Phones. New phone header: the logo with a menu button, and a row of icons for the store menu, your account, search, sharing and the cart. The cart icon shows how many items are in the cart.
Phones. The slideshow shows full size, and the header stays in place while the slides change.
Phones. A store categories menu, with sub-categories that open with a tap.
Phones. Tapping the account icon opens the login form. The cart and login panels close when you tap outside them.
Phones. Product lists no longer show stray bullets, product tabs show their titles, and the testimonial text is readable over its photo.
Tablets. The header stays on one row, and the "See Collection" button no longer wraps.
Layout. The testimonial text sits beside its photo again, and the footer columns fill the page width.
Favicon. New Favicon tab: pick an image, crop it, and the template creates every icon size for you. With thanks to Gianluca, whose favicon question inspired this tool.
Template settings. Shorter, clearer tab names.
Checkout. Checkout messages no longer show an empty box in the corner.
- Release Date:
2026-10-15, Version:
5.4.10, Notes:
Joomla 5.4.10. The Quickstart now installs Joomla 5.4.10 (Joomla 5.4.10 release notes), and the template version is now 5.4.10 to match.
Error pages. "Page not found" and "access denied" pages now show inside the template, with its header, menus and footer, and fit a phone screen.
Security. The template's main file can no longer be run on its own outside Joomla.
Fixed. Stray code text (
*/ ?>) no longer shows at the top of every page.Phones. Inner pages (login, account, shop and error pages) use the full screen width again instead of a narrow strip, and forms no longer run off the right edge.
Phones. The footer text no longer touches the screen edge.
Quickstart. A fresh install no longer lists stale update notices. Includes MCP for Joomla 2.8.3.
- Release Date:
2026-10-02, Version:
5.4.9.1, Notes:
Quickstart install fix. The quickstart now installs completely on MySQL databases. Before, the Joomla installer stopped part-way through on MySQL hosts; MariaDB hosts were not affected. Thanks to Iryna for reporting this.
- Release Date:
2026-09-30, Version:
5.4.9, Notes:
Joomla 5.4.9. Updated for Joomla 5.4.9, a security and bug-fix release. The quickstart now installs Joomla 5.4.9.
- Release Date:
2026-09-28, Version:
5.4.8.2, Notes:
Security update. Every template setting that is written into your pages is now escaped for the place it lands in (HTML, attributes, CSS and JavaScript), including the site name and slogan in image alt text, and module, menu and tab titles wherever the template prints them (module headings, title attributes and the mega menu). A setting or title containing a quote or markup can no longer break out of its place in the page. The error page escapes its message and title too. There are no visual changes. Recommended for all sites.
- Release Date:
2026-09-03, Version:
5.4.8.1, Notes:
Maintenance release.
- Joomla 3 compatibility code removed throughout the template. The template's PHP now uses Joomla's current API everywhere — the template files, the component override and every layout override (cart, checkout, product details, login and the modules). The old code only worked while Joomla's Behaviour – Backward Compatibility plugin was switched on. The most serious case was the error page: when it failed, Joomla could not display any error page, so an ordinary “page not found” was served to your visitors as a 500 server error.
Both the template package and the Quick Start have been rebuilt for this release. Download the latest from your member area.
- Release Date:
2026-08-18, Version:
5.4.8, Notes:
Maintenance and security release. It carries the current Joomla and VirtueMart updates, plus a set of JavaScript fixes that were prepared on 11 August 2026 but had not been published until now.
Security
- VirtueMart updated to 4.8.0 (from 4.6.8). VirtueMart 4.8.0 is an upstream security release from the VirtueMart project. The Serenity quickstart package now bundles it. If you already have a Serenity site running, please update VirtueMart on your own installation as well — those fixes live in the VirtueMart component itself, so installing the template package does not deliver them.
- Joomla core updated to 5.4.8 (from 5.4.7). The quickstart package now bundles Joomla 5.4.8. Existing sites should apply Joomla 5.4.8 through Joomla's own Update component.
Fixed
- A JavaScript error broke the drop-down menu script block. With "use dropdown" enabled,
index.phpstill called two jQuery menu plugins whose loaders had been removed in an earlier modernization pass. The call threw immediately and took the rest of that script block down with it, including the handler that closes the social-links panel. The dead calls are gone; the drop-down is CSS-driven throughnav.cssand the compatibility bridge. - A legacy browser-sniffing shim (
jQuery.browser) was removed. It was dropped from jQuery in version 1.9 and only existed to support the plugins above. - A jQuery Mobile touch bundle was no longer safe to load. It threw during its own module definition under jQuery 3.7 and nothing consumed its events. The reference has been removed.
- Google Fonts are now requested with a plain stylesheet link. The template previously injected a third-party font-loader script from
ajax.googleapis.com, which caused a flash of unstyled text while it initialised. Fonts are now requested directly withpreconnecthints, so text renders sooner. Your font choices in the template settings are unchanged.
Changed
- A leftover backup file was removed from the template folder.
index.php.pre-surgical.bakhad been left insidetemplates/serenity/by an earlier maintenance pass. It is no longer present. - The bundled quickstart no longer installs the retired
vmbasictemplate. Previous Serenity quickstarts carried a copy of VirtueMart's oldvmbasicsite template, which the VirtueMart installer reinstates. It served no purpose in a Serenity install and has been removed. - The template's
index.phpnow carries a version header, and every version surface reads 5.4.8.
- Release Date:
2026-07-22, Version:
5.4.0.3, Notes:
Maintenance release — fixes for issues found in real-world use on a live production site. With thanks to Michael Mullan, whose Expression bug report led to this maintenance pass across our templates.
- Fixed: search-module icon rendered as a stray character — the Joomla 3 jui icon font was removed from Joomla core in Joomla 4, so the glyph fell back to a literal character and the dead font reference 404'd on every page. The icon is now a self-contained SVG.
- Fixed: pagination arrows (first/previous/next/last) rendered as empty squares — Joomla 4+ uses newer icon class names the template never mapped. Now self-contained SVGs.
- Fixed: featured/blog articles showing only their title — tall single-column intro articles were clipped by the blog layout CSS.
- Improved: search button sits snug against the search input.
- Fixed: the template version shown after install now tracks the real release version.
- Release Date:
2026-07-16, Version:
5.4.0.2, Notes:
Bugfix release. Fixes a legacy Joomla 3 form-validation call (
behavior.formvalidation, removed in Joomla 5) in the VirtueMart login template override, which could cause a500 - behavior::formvalidation not founderror on pages where the login block is shown to guests — for example the cart, depending on your VirtueMart settings. The override now uses the Joomla 5-nativebehavior.formvalidator.Found during the follow-up on the 2026-07-15 report — thank you again, Zoltán!
- Release Date:
2026-07-15, Version:
5.4.0.1, Notes:
Bugfix release. Fixes a PHP 8 fatal error (
count(): Argument #1 ($value) must be of type Countable|array, null given) on the cart "Bill To / Ship To" address edit page. Theedit_address.phptemplate override — and its Bootstrap-3 layout variant — now guard the optional user-fields block with!empty()instead ofcount(), so guest checkout address editing works on all PHP 8 versions. Recommended update for everyone running Serenity 5.4.0.Thank you, Zoltán, for taking the time to report this!
- Release Date:
2026-06-16, Version:
5.4.0, Notes:
First Joomla 5 native release. Serenity has been brought forward from the previous download (
06.08.2025 5.3.0/4.4.4, built on Joomla 5.3.0 and VirtueMart 4.4.4) to Joomla 5.4.6 + VirtueMart 4.6.8 + PHP 8. The template no longer loads its own Bootstrap 2 stylesheets. It keeps its Bootstrap 2 column classes in module content and VirtueMart output, and a new compatibility stylesheet lays them out, so existing content keeps its layout. This release adds current social networks with Font Awesome 6 icons, Joomla’s own on/off switches in place of all 69 old checkboxes, escaping or validation at 211 places where template settings are written into the page, mega-menu fixes for Joomla 5, and fixes for stretched product and cart images. jQuery still loads for the camera slideshow, the carousels and the other effects; the Superfish/Supersubs menu scripts, Backstretch and the Internet Explorer scripts are no longer loaded. Compared with the previous download: 260 → 264 files, 4 added, none removed, 8 modified. The template version is now 5.4.0.Added
Bootstrap 5 compatibility layer
- New
css/bs2-bs5-bridge.css(496 lines, about 16 KB). It is added after the template’s other stylesheets (template.css,blog.css, the colour preset, Font Awesome and the right-to-left sheet), so its rules win. It lays out Serenity’s Bootstrap 2 classes without the Bootstrap 2 stylesheets:.row-fluidbecomes a wrapping flex row, and.span1–.span12inside it get their twelve-column percentage widths with 15 px side padding..offset1–.offset11work inside.row-fluid.- Standalone
.spanNcolumns keep Bootstrap 2’s floated layout and fixed widths (60 px to 940 px). - The Bootstrap 2 helpers
pull-left/pull-right,hidden-phone/visible-phoneand thebtn-inverse/btn-defaultbuttons. - Below 768 px every
.row-fluidcolumn stacks at full width.
- The same file carries the header, testimonial, carousel, breadcrumb, mega-menu and image fixes listed under Fixed.
Modern social network support
- Five new social services in the template options, each with a URL field and an on/off switch, off by default: Threads, Bluesky, Mastodon, TikTok and Discord (
threads/threadsON,bluesky/blueskyON,mastodon/mastodonON,tiktok/tiktokON,discord/discordON). - Twitter is now X: the setting is labelled “X (formerly Twitter)” and shows the X logo. It keeps its
twittersetting name, so an existing address carries over. - The social links (
#social-links) now draw Font Awesome 6 brand icons (fab fa-x-twitter,fa-facebook-f,fa-instagram,fa-threads,fa-bluesky,fa-mastodon,fa-linkedin-in,fa-youtube,fa-tiktok,fa-vimeo-v,fa-pinterest-p,fa-discord,fas fa-rss) instead of the Socicon font classes. Each link has atitlewith the network’s name. The five custom social slots (customSoc1–customSoc5) stay. - The network URL fields default to the placeholder
#TYPE-URL-HERE, so an unfilled link is easy to spot.
Security helpers
- Three new helper functions at the top of
index.php:phEsc(),phHexColor()andphCssDim(), used at 211 places. Details under Security.
Template folder
- An active
.htaccessin the template folder refuses web requests for editor and backup copies (.bak,.bak-*,.orig,.old,.swp,.swo,.tmp,pre-*,~). CHANGELOG.mdandCHANGELOG.htmlship in the template folder.
Changed
Joomla 5 platform
- Built for Joomla 5.4.6 and VirtueMart 4.6.8 (the previous download was labelled for Joomla 5.3.0 and VirtueMart 4.4.4).
- The template no longer loads its Bootstrap 2 files
css/bootstrap/bootstrap.min.css,bootstrap-responsive.min.cssandbootstrap-extended.css. Joomla 5’s Bootstrap 5 JavaScript and jQuery load as before. - Layout markup in
index.php: 19.row-fluidrows are now.row, and the page’s own columns use Bootstrap 5 classes: the left and right columns (span3→col-md-3, twice), the breadcrumb and footer module rows (span12→col-md-12) and the Customers box (span6 offset6→col-md-6 offset-md-6). Module-position widths stayspanNand are laid out by the bridge. - The tabs module labels use Bootstrap 5 display classes (
d-inline d-sm-none/d-none d-sm-inline) instead ofvisible-phone/hidden-phone: phones show the tab number, larger screens the tab title. templateDetails.xml: version06.08.2025 5.3.0/4.4.4→5.4.0, also in the Description tab.method="upgrade"is kept, so an existing install updates in place.
Template Options screen
- 69 legacy checkbox switches (
class="switch" type="checkbox") are now Joomla’s native on/off switchers (type="radio",layout="joomla.form.field.radio.switcher", withJNO/JYESoptions). They cover the slideshow (cam_autoAdvance,cam_hover,cam_navigationand the rest), fonts (AdditionalGFontON), the EU cookie law window, the drop-down and mega menus, the site name and slogan (H1TitleImgText,H2TitleImgText),OverrideDefaultSettings,RSSON, the social switches andcustomSoc1ON–customSoc5ON. With the five new social switches the template has 74 switchers and no checkboxes. - Fields 288 → 290, still in 13 tabs. The language file drops the two Blogger strings (74 → 72).
Icons
- Front end: Font Awesome 4.6.3 from the shut-down MaxCDN (
font-awesome.min.css) and a second copy of Font Awesome 5.0.1 (use.fontawesome.com) → one Font Awesome 6.5.2 stylesheet from cdnjs (all.min.css).
Mega menu on Joomla 5
- The mega-menu loop in
index.phpreads each menu item’s settings through the public$menuitem->getParams()instead of the item’s protectedparamsproperty. - The loop now takes only level-1 items. Joomla 5’s
$menu->getItems('menutype', …)returns every level, so without the filter every sub-item showed as another top-level item across the header bar. - Drop-down panels still come from the
menu-position-1/2/3-<alias>module positions; their rows use.rowinstead of.row-fluid.
Template overrides
html/mod_login/default.php:$type = $type ?? 'login';(Joomla 5 no longer passes$typeto this layout).html/mod_breadcrumbs/default.php:$moduleclass_sfx = $moduleclass_sfx ?? '';(same reason).html/com_virtuemart/askquestion/view.html.php: the view declares its 10 properties ($captcha,$comment,$isMail,$login,$product,$show_prices,$subject,$user,$vendor,$vendorEmail).
Fixed
- “Undefined variable” warnings from the login module (
$type) and the breadcrumbs module ($moduleclass_sfx) on Joomla 5. - PHP 8.2 “creation of dynamic property” notices on the “Ask a question” form.
- Mega menu: every child menu item appeared as an extra top-level item (see Changed).
- Mega-menu drop-downs vanished while the pointer crossed the gap between the menu bar and the panel. The panel now stays at
top: 90pxfor 500 ms after the pointer leaves (CSStransition: top 0s linear 500mson#mega-menu.menu-nav > li > ul.ul-container), with no script. - Stretched images. Under the new layout, VirtueMart images with
widthandheightattributes stretched into tall, narrow strips. Now:- Every
img[width][height]getsmax-width: 100%; height: auto, except images whose class names an icon, Socicon or emoji and separator images. - Images inside the VirtueMart and article containers do the same:
.main-image,.vm-additional-images,.vm-product-media-container,.productdetails-view,.vmproduct,.category-view,.featured-view,.latest-view,.topten-view,.recent-view,.related-products-view,.browse-view,.search-result-products,.com-content-article,.article-contentand others. - Product-module, related-product and category images keep a square frame (
aspect-ratio: 1 / 1,object-fit: contain). - Cart and mini-cart thumbnails are 45 px wide and at most 60 px high (
span.cart-images img,.cartpanel img).
- Every
- The fixed header was see-through while scrolling:
#top-handlernow has a white background and a light shadow. - The testimonials box was far taller than its text: its hard-coded
min-height: 460pxis nowauto. - The manufacturers carousel had a large gap above its pagination dots; the padding is tightened (
.moduletable_manufacturers). - Breadcrumbs showed a list bullet before each crumb with Joomla 5’s list markup. They now show as one inline trail with even spacing around the divider.
Removed
Legacy scripts and stylesheets no longer loaded
- Scripts:
superfish.js,supersubs.js,jquery.backstretch.min.js(loaded twice before),modernizr.js,selectivizr-min.jsandhtml5.js(html5shiv from googlecode.com). The template’s own files remain injs/(still 29 files) but nothing loads them. - Stylesheets: the Bootstrap 2 files in
css/bootstrap/(they remain in the folder in this release), Font Awesome 4.6.3 from MaxCDN, Font Awesome 5.0.1, and the Internet Explorer filesie.cssandie6.csswith their conditional comments.
Retired social services
- Four social services removed from the template options and the page, with their switches: Google+ (
gplus), StumbleUpon (stumbleupon), Digg (digg) and Blogger (blogger), plus the language stringsTPL_SERENITY_BLOGGER_LABELandTPL_SERENITY_BLOGGER_DESC.
Security
- Template settings are escaped or validated at 211 places where
index.phpwrites them into the page, through the new helpers:phEsc()(79) for HTML text and attributes, and for setting values inside inline<style>and JavaScript: the content font size and extra Google font family, the logo area width, the site-name and slogan positions, colours and font sizes, the site-name and slogan image paths, the header side-panel positions, sizes and speed, drop-down column widths, the slideshow minimum height and caption position, the cookie-law window’s position class, title, text, button labels, link, link target, opacity and colours, the testimonials title and description, every social link address (13 networks and 5 custom slots) and the custom icon classes.phHexColor()(127) for the 75 colour settingscolor1–color77in the inline colour stylesheet. Anything that is not a hex colour falls back to#000000.phCssDim()(5) for the header height (topheight) wherever it is written as a CSS length.
- The Site Name and Slogan text (
H1Title/H2Title) is escaped when it is printed as text. - The template folder’s
.htaccessrefuses requests for backup copies of template files (see Added).
Quickstart Installer
The Quickstart (
serenity-quickstart-J5.4.6-16.06.2026.zip) is a complete Joomla 5.4.6 site with VirtueMart 4.6.8 and Serenity installed as the active template, with the demo content.- It installs through Joomla’s standard web installer, replacing the previous Akeeba Backup archive (
.jpa). - Bundled extensions: Akeeba Backup 10.3.4, Weblinks 5.1.0 and the Search package 4.0.0.
- Only the templates the site uses are included:
cassiopeia,serenityandsystemfor the site,atumandvmadminfor the administrator. VirtueMart’s demo templateshorme_3,vmbeez3andvmbasicare not installed. - Two outdated extensions are not installed: VirtueMart’s deprecated PayPal payment plugin (
vmpayment/paypal; PayPal Checkout stays) and Akeeba’s FOF 3 library (file_fof30), with its update site. - Mega menu demo: Select a menu for Mega Menu (
selectmegamenu) now points at the site’stopmenu. It pointed at a menu calledmegamenuthat does not exist, so the mega menu had no items. Categories opens a four-column panel (For Man, For Woman, a Shoes promotion and an Accessories list, inmenu-position-1-online-store), and Using Joomla! opens a list of its six sub-pages (menu-position-1-using-joomla). Template Features stays a plain link, and its menu alias istemplate-featuresinstead of the generated2015-02-18-10-15-06. - The contact page no longer points at an image that does not exist (
images/template.png). - Update sites: the VirtueMart eWay and Realex addresses, which began with a line break and spaces, are repaired; two broken VirtueMart update sites are switched off.
- A clean starting state: article view counters start at zero (69 articles), 11 of the 15 post-installation messages are hidden, the template overrides are marked as reviewed (no “changes found” warning), and the footer copyright reads 2026.
Package format
- Standalone template:
pkg_serenity-5.4.0.zip, a Joomla package (pkg_serenity.xml) that installs theserenitytemplate and registers it in the package manager. It declaresmethod="upgrade", so an existing Serenity updates in place,<blockChildUninstall>true</blockChildUninstall>, so the template is removed through the package rather than on its own, and an update server (https://virtuemarttemplates.net/updates/pkg_serenity.xml). - Bare template:
tpl_serenity.zip. - Quickstart bundle:
serenity-quickstart-J5.4.6-16.06.2026.zip, a complete Joomla 5.4.6 install with VirtueMart 4.6.8 and Serenity pre-loaded as the active template. It is for new sites only, not an upgrade for an existing store.
Upgrading and later releases: on a live store, installpkg_serenity-5.4.0.zipthrough System → Install → Extensions; it updates the template in place and keeps your content, modules and settings. Update Joomla and VirtueMart separately through their own updaters. From this release Serenity uses a plain version number (5.4.0) that Joomla’s updater can compare; the previous download carried06.08.2025 5.3.0/4.4.4. In this release the slideshow is still camera.js and the template still used Joomla 3 class names such asJURI,JHtmlandJModuleHelper(248 calls), which need Joomla’s Behaviour – Backward Compatibility plugin; they were replaced throughout in 5.4.8.1. The background images that had used Backstretch moved to CSS in 5.4.8, and Joomla 5’s Bootstrap 5 stylesheet was first loaded in 5.4.10.1. - New
- Release Date:
2025-08-06, Version:
06.08.2025 5.3.0/4.4.4, Notes:
- Upgraded - Now compatible Joomla 5
- Upgraded - Now compatible Virtuemart 4.4.4
- Fixed - Minor bugs
- Release Date:
2024-11-29, Version:
29.11.2024 5.1.2/4.2.12, Notes:
- Fixed - Minor bugs with cart
- Release Date:
2024-08-08, Version:
08/08/2024 5.1.2/4.2.12, Notes:
- Upgraded - Now compatible Joomla 5
- Upgraded - Now compatible VirtueMart 4.2.12
- Fixed - Minor bugs
- Release Date:
2024-06-21, Version:
21/06/2024 4.4.5/4.2.0, Notes:
- Fixed - Tab Bug
- Release Date:
2024-06-13, Version:
13/06/2024 4.4.5/4.2.0, Notes:
- Fixed - Minor Bugs
- Release Date:
2024-02-06, Version:
06/02/2024 4.2.0, Notes:
- Fixed - Minor Bugs
- Release Date:
2023-06-30, Version:
26.06.2023 4.3.0/4.0.13, Notes:
- Fixed - VirtueMart Products Module issue
- Fixed - Double ReCaptcha on VirtueMart Registration page
- Fixed - Template toggle button not displaying
- Release Date:
2023-06-23, Version:
16.06.2023 4.3.0/4.0.13, Notes:
- Fixed - Menu Params error for adding in image on menu
- Release Date:
2023-05-20, Version:
20.05.2023 4.3.0/4.0.12, Notes:
- Fixed - Template updated to be compatible with Joomla 4.3
- Release Date:
2022-09-09, Version:
09.09.2022 3.10.11/4.0.6, Notes:
- Fixed - Joomla 3.10.11
- Fixed - Template updated for PHP 8.0
- Release Date:
2026-10-29, Version:
5.4.10.5, Notes: