This website is using cookies
×
  • October 15, 2026

    Version 5.4.10

    First Joomla 5 native release. Zeus Shop has been brought forward from the previous download (28.06.2024 5..1.1/4.2.12, built against a VirtueMart 4.2.12 pre-release) to Joomla 5.4.10 + VirtueMart 4.8.4 + PHP 8 + Bootstrap 5. The main page layout now uses Bootstrap 5 rows and columns; the template overrides and your own module content keep their Bootstrap 2 classes and render on Joomla 5’s Bootstrap 5 through a compatibility stylesheet. All 165 Joomla 3 class calls are gone, the VirtueMart login page and the add-to-cart buttons work again, and there is a new phone layout with a slide-out menu and a fingertip-sized toolbar. The template options gain a real colour picker, Joomla’s own on/off switches, a favicon tool, a Custom CSS box and current social networks, and every template setting written into the page is escaped. jQuery still loads for the camera slideshow, the Owl product carousels and the scroll animations; the old jQuery menu, background and polyfill plug-ins are no longer loaded. Compared with the previous download: 250 → 256 files, 9 added, 3 removed, 44 modified. The template version is now 5.4.10, matching the Joomla version it ships with.

    Added

    Bootstrap 5 compatibility layer

    • index.php loads Joomla 5’s bundled Bootstrap 5 (/media/vendor/bootstrap/css/bootstrap.min.css) ahead of the template’s own stylesheets.
    • New css/bs2-bs5-bridge.css: maps Zeus’s Bootstrap 2 grid (.row-fluid, .spanN, offsets, nested fluid rows), the hidden-phone / visible-phone family of utilities, tab panes, .well / .page-header, button and form classes and the modal shell onto Bootstrap 5. It is linked after all of the template’s own stylesheets, just before </head>, with a file-time version marker so an update shows straight away.
    • New js/cs-jq-compat.js: restores three jQuery 1.x calls that Joomla 5’s jQuery 3 removed but the bundled slideshow and carousel scripts still use (.live(), .offset() on the window, and .load(fn) as a load-event shortcut).

    Phone layout

    • New js/cs-mobile-generic.js: on phones (up to 767 px) Zeus gets a compact header with a menu button that opens the main menu as a slide-out panel, with sub-menus that open in place.
    • A phone toolbar under the header with six buttons of at least 44 px: Section menu (the shop categories), Log in, Register, Search, Follow us (the social links) and Cart. The template’s own second menu button and desktop quick links are hidden on phones in its favour.
    • Phone cart page: each product is a card with labelled price, quantity, tax and total; the totals read as label/amount lines, and the billing, shipping and checkout buttons are full width. Nothing runs off the screen.
    • The add-to-cart confirmation, the login dialog and the cart drop-down fit a phone screen.
    • Login, quantity and coupon fields use 16 px text on phones, so iPhones no longer zoom the page in when you tap them.
    • Account pages (login, registration, password reset, VirtueMart account) show the page content first on phones, with only the breadcrumbs and the store category menu above it.
    • Phone slideshow: the caption sits at the top of the slide, so its text and Buy Now button fit inside it. The previous / next arrows are visible on touch screens, where they used to appear only on mouse hover.
    • Joomla page numbers wrap onto a second line instead of running off the screen.
    • The page content keeps a 15 px inset from the phone edge, and the footer and the home page’s wide image band (#top-long) a 20 px inset, while their backgrounds still run edge to edge (cs-no-bs2-gutter body class). The page cannot be pushed sideways.

    Own error pages

    • New error.php: “Page not found” (404) and “access denied” (403) pages are shown inside the template, with its header, menus, phone toolbar and footer, instead of the old stand-alone “Oops!” page, which had no phone viewport. The error page uses the template’s default style (so a home-page style that hides the content cannot hide the message) and is marked noindex, follow. Server errors (5xx) use Joomla’s minimal system page, since the database or a module may be what failed.

    Colour picker and Options screen

    • New custom field fields/colorpicker.php with the open-source Coloris picker, which ships inside the template (js/coloris.min.js, css/coloris.min.css): nothing is loaded from another site. All 101 colour settings use it.
    • New fields/adminui.php: makes the template’s Details panel follow Joomla’s light or dark admin theme (it was grey text with a white shadow, unreadable on the dark theme) and lets help text on the Options screen run across the full width.

    Favicon tool

    • New Favicon tab (fieldset faviconsettings) with a media field (favicon) and a crop tool (favicontool, fields/favicontool.php): pick an image, drag the square over the part you want, and click Create Favicon.
    • index.php turns the chosen image into a full icon set through two new helpers, phFaviconSet() and phIcoBytes(): a multi-size .ico (16/32/48) plus 32, 180, 192 and 512 px PNGs in images/favicon-generated/, with a copy of favicon.ico at the site root. Without a chosen image the template’s own favicon.ico is used.
    • 10 new language strings in en-GB.tpl_zeus.ini (74 → 84), e.g. TPL_ZEUS_FAVICON_TAB, TPL_ZEUS_FAVICON_LABEL, TPL_ZEUS_FAVICONTOOL_CREATE.

    Custom CSS that survives updates

    • New Custom CSS box (customcss) on the Header & Footer Custom Code tab. It is stored with the template style in the database, so a template update never touches it.
    • For larger stylesheets, css/custom.css is loaded if it exists. The package deliberately does not contain that file, so an update cannot overwrite or remove it.
    • Both load after the template’s stylesheets and the compatibility layer, so your rules win.

    Modern social network support

    • Five new social services, each with its own URL field and on/off switch: Threads, Bluesky, Mastodon, TikTok and Discord (threads/threadsON, bluesky/blueskyON, mastodon/mastodonON, tiktok/tiktokON, discord/discordON). Zeus now offers 13: X, Facebook, Instagram, Threads, Bluesky, Mastodon, LinkedIn, YouTube, TikTok, Vimeo, Pinterest, Discord and RSS.
    • The Twitter slot is now labelled X (formerly Twitter).

    Security helpers

    • 13 new helper functions in index.php: phEsc(), phRichText(), phHexColor(), phCssDim(), phCssNum(), phCssUrl(), phCssFont(), phCssSelector(), phCssToken(), phJsStr(), phJsLit(), phFaviconSet(), phIcoBytes(). The output helpers are also defined in component.php for the print view and VirtueMart pop-ups. Details under Security.

    Changed

    Joomla 5 platform

    • Built for Joomla 5.4.10 and VirtueMart 4.8.4.
    • The login dialog is a Bootstrap 5 dialog: data-toggle="modal" → data-bs-toggle / data-bs-target, a centred modal-dialog / modal-content wrapper, and data-bs-dismiss on the close control (the Bootstrap 2 modal ahide afade classes are gone).
    • templateDetails.xml version 28.06.2024 5..1.1/4.2.12 → 5.4.10, creation date 18/06/2015 → 2026-10-15; the version shown in the template description and the @version docblock in index.php match. method="upgrade" is kept, so an existing install updates in place.

    Page layout on Bootstrap 5

    • In index.php, 49 Bootstrap 2 column classes became Bootstrap 5 ones (.spanN → .col-md-N, .offset3 → .offset-md-3) and 21 .row-fluid rows became .row, including the home-page tab block.
    • The template overrides under html/ and module content entered by site editors keep their Bootstrap 2 classes, which the compatibility layer renders.
    • css/template.css rules written for .span2 / .span3 columns now also match the matching .col-md-N columns.

    J3 → J5 API migration

    • All 165 Joomla 3 static calls removed (JRoute → Route, JText → Text, JFactory → Factory, JHtml / JHTML → HTMLHelper, JURI → Uri, JModuleHelper → ModuleHelper, JPluginHelper, JComponentHelper, JDocumentHTML, JError, JDispatcher). These aliases exist only while Joomla’s Behaviour – Backward Compatibility plugin is enabled, and not at all in Joomla 6.
    • Calls before → after, by file:
      • html/mod_login/default.php 20 → 0; html/com_virtuemart/user/login.php 19 → 0; index.php 17 → 0; html/com_virtuemart/productdetails/default.php 16 → 0.
      • html/com_virtuemart/virtuemart/default_products.php 9, default_categories.php 1, default.php 1 → 0.
      • html/mod_virtuemart_product/single.php 9, default.php 7 → 0; html/mod_virtuemart_manufacturer/default.php 2, html/mod_virtuemart_currencies/default.php 2, html/mod_virtuemart_cart/default.php 1 → 0.
      • html/com_virtuemart/category/default.php 8, categories.php 1 → 0; html/com_virtuemart/user/edit_address.php 6 → 0.
      • html/com_virtuemart/cart/default_pricelist.php 5, default_address.php 2, default_coupon.php 1 → 0.
      • html/com_virtuemart/productdetails/default_images.php 4, default_reviews.php 4, default_customfields.php 1, default_showcategory.php 1 → 0; html/com_virtuemart/sublayouts/addtocart.php and addtocartbar.php 1 each → 0.
      • html/com_virtuemart/askquestion/form.php 3, bs3-form.php 3, mail_html_question.php 2 → 0; html/mod_breadcrumbs/default.php and html/mod_search/default.php 1 each → 0.
      • error.php: JError::raiseWarning(404, JText::_(…)) → the Joomla 4+ API (see Fixed).
    • In all, 35 of the 46 PHP overrides under html/ were modified.

    Template Options screen

    • 162 field type changes in templateDetails.xml:
      • 101 colour settings: type="color" → type="colorpicker" (Coloris, with a live swatch).
      • 61 on/off settings: the legacy class="switch" checkboxes → Joomla 5’s native switcher (type="radio", layout="joomla.form.field.radio.switcher"), for example RSSON, H1TitleImgText, H2TitleImgText, cam_autoAdvance, cam_hover, cam_navigation, cam_mobileAutoAdvance. With the retired social switches removed and five new ones added, Zeus has 66 switchers and no legacy checkboxes (65 before).
    • Fields 281 → 288, tabs 12 → 13.
    • Tab names no longer end in “Settings”: Basic, Site Name & Slogan, Drop Down Menus, Built-in Slideshow, Product Slider, Testimonials Slider, Manufacturers Slider, Product Images, Side Pop Up Box, Theme; “Template Header And Footer Custom Code” is now “Header & Footer Custom Code”.

    Fonts, icons and page loading

    • The Google Fonts WebFontConfig JavaScript loader (which fetched webfont.js from ajax.googleapis.com) is replaced by a direct stylesheet link for Roboto with display=swap and preconnect hints (WebFontConfig 1 → 0).
    • The full-screen loading spinner that hid the whole page until every file had loaded (up to 3 seconds) no longer runs; the page shows as it loads.
    • The front end loads Font Awesome 6.5.2 (all.min.css) with v4-shims.min.css from cdnjs, in place of Font Awesome 4.6.3 and 4.3.0 from the shut-down MaxCDN, which were both loaded. The template’s existing fa fa-* markup keeps working.
    • Social links are Font Awesome 6 brand icons (fab fa-*) instead of the 12 PNG images in images/, and open with rel="noopener".

    Menus, background and search without old jQuery plug-ins

    • Drop-down menus open on hover with CSS instead of the Superfish/Supersubs plug-ins. The gap between a menu heading and its drop-down can be crossed with the mouse, and a short close delay keeps the drop-down open on the way down.
    • The body background, the home page’s wide image band (#top-long) and the customers band (#customers-box) are sized with CSS background-size: cover instead of Backstretch.
    • The desktop search opener is a small plain-JavaScript handler instead of a jQuery toggle, and puts the cursor in the search box when it opens.
    • jquery.mobile.customized.min.js is no longer loaded with the slideshow: under jQuery 3 it threw an error while loading and nothing used it. Template-side jQuery calls: 103 → 74.

    Store

    • The cart count is a red number badge on the desktop cart icon and on the phone Cart button, shown whenever the cart holds items; it replaces Zeus’s small text count. An empty cart’s drop-down shows “0 products”.
    • On the cart page, the update-quantity and remove buttons show Font Awesome icons (rotate arrows and bin); the remove button is icon-only, keeps “Delete Product From Cart” as its accessible name, and is 44×44 px on phones.

    Fixed

    Pages that returned a server error

    • The VirtueMart login page returned a server error on Joomla 5. html/com_virtuemart/user/login.php called JDispatcher::getInstance(), which Joomla 4 removed and no compatibility setting brings back; it fired for exactly the guest the login form is for. It now uses Factory::getApplication()->triggerEvent(). The same file’s JHtml::_('behavior.modal'), also removed in Joomla 5, is gone.
    • The login form could stop with “behavior::formvalidation not found”. The Joomla 3 behavior.formvalidation call in the VirtueMart login override is now the Joomla 5 behavior.formvalidator. With thanks to Zoltán Szász, whose report led to this fix across our templates.
    • Editing a billing or shipping address could fail on PHP 8. html/com_virtuemart/user/edit_address.php called count($this->userFields['functions']) on a value that can be empty, which is a fatal error on PHP 8; it now uses !empty(). Also with thanks to Zoltán Szász.
    • Every “page not found” could become a server error. error.php used JError::raiseWarning() and JText; with the backward-compatibility plugin off, and always on Joomla 6, Joomla could not render any error page, so each 404 became a 500.

    Shop

    • Add to Cart did nothing. The button showed a spinner that never finished and the item was never added, because the template’s cart forms were missing the security token VirtueMart requires. The token is now in html/com_virtuemart/sublayouts/addtocart.php, which product pages, category listings and the product modules all use, and in the home page’s own product form in html/com_virtuemart/virtuemart/default_products.php.
    • The password reset, login and username reminder forms did not show when they had no menu item of their own: such pages borrow the home menu item and its “Home Page” style, which hides #content-handler. index.php now shows the content on those pages.

    Maintenance pass

    • The @font-face in css/template.css pointing at the removed media/jui/fonts/ IcoMoon font is disabled; it returned four 404s on every page.
    • Joomla’s pagination arrows (icon-angle-left / -right / -double-left / -double-right) and the eye on its password show/hide button (icon-eye) were blank; they now draw Font Awesome glyphs.
    • Featured-article intro text is no longer clipped to its title (.blog-featured .blog-item).
    • The search button sits flush with its search box (#search-position .btn).
    • With thanks to Michael Mullan, whose Expression bug report led to this maintenance pass across our templates.

    Removed

    Legacy scripts no longer loaded

    • superfish.js, supersubs.js, jquery.backstretch.min.js, jquery.mobile.customized.min.js, modernizr.js and selectivizr-min.js. The files remain in js/ but nothing loads them.
    • The remote html5.js shim from html5shiv.googlecode.com and webfont.js from ajax.googleapis.com are no longer requested.

    Legacy stylesheets no longer loaded

    • Bootstrap 2 in the main layout: css/bootstrap/bootstrap.min.css, bootstrap-responsive.min.css and bootstrap-extended.css. Joomla’s Bootstrap 5 and the compatibility layer take their place.
    • The Internet Explorer files: ie9-10.css from the main layout, and ie.css / ie6.css with their conditional comments.
    • The MaxCDN Font Awesome 4.6.3 and 4.3.0 stylesheets.
    • The error page’s reset.css and presets/style-error.css.

    Files removed

    • utils/admin-js.js, a jQuery script that drew the old checkbox switches on the Options screen, and the <script> in the template description that loaded it.
    • html/com_virtuemart/productdetails/default_addtocart.php, an unused override with its own token-less cart form; product pages use the shared add-to-cart sublayout.
    • css/bootstrap.zip, an archive of Bootstrap 2 files left in the stylesheet folder.

    Retired social services

    • Four social slots removed with their switches: Google+ (gplus), StumbleUpon, Digg and Blogger.

    Security

    • Every template setting written into the page is escaped for where it lands, through the new helpers (277 call sites in index.php and component.php):
      • phHexColor() (138): colour settings, validated as hex colours with a fallback.
      • phEsc() (50): HTML text and attributes, including all 13 social link URLs.
      • phCssToken() (32), phCssNum() (13), phCssDim(), phCssUrl(): sizes, numbers and image URLs inside inline <style>.
      • phJsLit() (21) and phJsStr() (14): slideshow and carousel settings written into inline JavaScript.
    • Site name, slogan and testimonials title (H1Title, H2Title, testi_title) go through phRichText(): formatting markup is kept, but scripts, styles, iframes and on* event handlers are stripped.
    • Image alt text built with strip_tags() did not escape quotes; the 3 occurrences in index.php are now phEsc(strip_tags(…)).
    • Module titles are escaped in index.php (menu, login, side pop-up box titles), in html/modules.php (titles and module class suffixes), in the module chromes html/layouts/chromes/megamenu.php, slides.php, vmdefault.php and vmtab.php, and in the mod_breadcrumbs, mod_custom, mod_login, mod_menu and mod_virtuemart_cart overrides. htmlspecialchars/escape calls across the template: 2 → 31.
    • The error page escapes the error message it prints.

    Quickstart Installer

    The Quickstart is a complete Joomla 5.4.10 site with VirtueMart 4.8.4 and Zeus Shop installed as the active template, with the demo content. It is now a zip you extract and install with the normal Joomla installer; the previous Quickstart was an Akeeba .jpa archive restored with Kickstart.

    • Bundled extensions: Joomla 5.4.10, VirtueMart 4.8.4, Akeeba Backup 10.4.0, Weblinks 5.1.0, MCP For J 2.8.3 and StageIt 5.7.3.
    • Only the templates the site uses are included: the templates/ folder holds cassiopeia, system and zeus. VirtueMart’s demo templates horme_3 and vmbeez3 are gone; both carried error pages that returned a server error.
    • Joomla 5.4’s “What’s New” guided tour (tour 15) no longer starts by itself (autostart = 0).
    • Joomla’s Statistics plugin is set to never send data.
    • A clean starting state: the action log is empty, 5 of the 16 post-install messages are enabled (the beginners’ welcome, action logs, privacy, multi-factor authentication and automated updates), and the template-override tracking table is empty, so there is no “changes found” warning.

    Package format

    • Standalone template: Zeus Shop now installs as a Joomla package (pkg_zeus-5.4.10.zip, manifest pkg_zeus.xml) that installs and registers the zeus template. It declares method="upgrade", so an existing Zeus updates in place, and <blockChildUninstall>true</blockChildUninstall>, so the template is removed through the package rather than on its own. The previous download was a bare template zip.
    • Quickstart bundle: zeus-quickstart-J5.4.10.zip, a complete Joomla 5.4.10 install with VirtueMart 4.8.4 and Zeus Shop pre-loaded as the active template.
    Version numbering: from this release the first three digits of Zeus Shop’s version match the Joomla release it is built for (5.4.10 = Joomla 5.4.10). A later fix on the same Joomla release adds a fourth digit (5.4.10.1). The previous download was versioned 28.06.2024 5..1.1/4.2.12: the original Joomla 4/5-compatible build, still on Bootstrap 2 and Joomla 3 class calls. This release is the first one rebuilt natively for Joomla 5.
    July 17, 2024

    Version 28.06.2024 5.1.1/4.2.12

    • Update - Template updated to Joomla 5
    • Compatible with Virtuemart pre-release Version 4.2.12
    • Minor Bugs fixed
    February 15, 2024

    Version 13.02.2024 5.0.2/4.2.6

    • Update - Template updated to Joomla 5
    • Compatible with Virtuemart pre-release Version 4.2.6
    • Please Note: VirtueMart 4.2.4,is not compatible with the Joomla 5, 
      therefore no Joomla 5 Quickstart until VirtueMart Version 4.2.6 is publicly released. 
    April 10, 2023

    Version 01.04.2023 4.2.8/4.0.12

    • Fixed - Template updated to be compatible with Joomla 4.2
×

logo


TOP
Connect