Skip to content
  • Version 6.2.0

    First Joomla 6 native release. Essential has been rebuilt for Joomla 6.2.0 + PHP 8. The previous download is the vendor’s 6.0.0 package (essential.zip, version string 11.11.2025 6.0.0), and everything below is measured against it. Every Joomla 3 class call is gone (13 → 0), the template options use Joomla’s own on/off switches and a modern colour picker, every template setting written into the page is escaped, the error page now works, and there is a new phone layout with a slide-out menu and a row of fingertip-sized buttons. Essential keeps its own Bootstrap 2 stylesheet and Bootstrap 2 markup and renders through a compatibility stylesheet; the Camera slideshow and Joomla’s jQuery stay. Template files: 231 → 199, with 16 added, 48 removed and 25 modified. The template version is now 6.2.0, matching the Joomla version it ships with.

    Added

    Compatibility stylesheet for Joomla 6

    • New css/bs2-bs5-bridge.css (canonical revision 2026-10-24.163), linked last in the page head with a file-time version marker. It lets Essential’s Bootstrap 2 markup render correctly with the Bootstrap 5 scripts that Joomla 6 loads:
      • Bootstrap 2 grid (.row-fluid / .spanN widths and gutters, nested spans, phone stacking of span columns) and the Bootstrap 2 responsive utilities (hidden-phone, hidden-tablet, hidden-desktop and the matching visible-* classes), tab panes, collapse, .well / .page-header and base typography.
      • The log-in dialog and other Bootstrap 5 dialogs: a Bootstrap 2 sheet marks an open dialog with .in where Bootstrap 5 uses .show, so the dialog is made visible and centred.
      • Joomla 4+ icon classes (icon-angle-left and the other pagination arrows, the password eye icon-eye and about 30 more) mapped to Font Awesome 6 glyphs, and the Bootstrap 2 glyphicon sprite switched off where it painted behind them.
      • Seven Essential-specific blocks: essential-login-register-text-midline, essential-phone-pagination-targets, essential-phone-nogutter-slideshow-20261020, essential-password-group-flex-20261020, essential-breadcrumb-band-height-20261020, essential-phone-heading-inset-20261020 and essential-std-20261103.
    • New js/cs-jq-compat.js: restores $.fn.live(), which the bundled camera.min.js uses to bind the slideshow’s play and stop controls but Joomla 6’s jQuery 3.7 no longer has, plus the function form of $.fn.load() and $.fn.offset() on the window.
    • Font Awesome 6.5.2 (all.min.css + v4-shims.min.css from cdnjs) on the front end, so the template’s fa fa-* class names keep working through the shims. The icons on the template’s Options screen now load from the same place: they came from Font Awesome 4.6.3 on MaxCDN, which no longer serves it.
    • Open Sans now loads through a plain <link> with preconnect and display=swap, replacing the Google WebFont loader script (WebFontConfig).

    New phone layout

    • New js/cs-mobile.js replaces the old selectnav select-box menu. On phones (up to 767 px) a menu button in the header, filled in the template’s blue (rgb(85, 159, 193)) with dark bars and centred on the logo, opens the main menu as a slide-out panel, with submenus opening in place behind visible “+” buttons.
    • A row of 44×44 px buttons in the same blue: Section menu, Log in, Register, Search and Follow us (the social links). Tapping outside an open panel closes it.
    • Section menu reads a new module position, cs-secondary (declared in templateDetails.xml and output in a hidden holder in index.php), so any menu module published there appears behind that button instead of repeating the top menu.
    • Opening a phone panel dims the page below the header only; the logo, menu button and button row stay clear.
    • Phones use the full screen width. The 20 px side gutter from css/responsive.css is gone (<body class="cs-no-bs2-gutter">): the header, slideshow and grey bands run edge to edge while text keeps a 20 px margin, and headings line up with their paragraphs.
    • The slideshow fits a phone. It is a landscape strip showing the whole photo with its headline, instead of a tall, cropped 500 px sliver. Desktop and tablet slideshows are unchanged.
    • Blog and category page numbers are 44×44 px tap targets on phones and wrap onto a second line when the row is too long.
    • Login and registration fields use 16 px text on phones, so iPhones no longer zoom the page in when you tap them.

    Favicon

    • New Favicon tab in the template options (fieldset faviconsettings, fields favicon and favicontool, field class fields/favicontool.php). Pick one image, crop it with the square on the preview, and the template creates the whole icon set: favicon.ico, PNG icons at 32, 192 and 512 px and a 180 px Apple touch icon (phFaviconSet() and phIcoBytes() in index.php). With thanks to Gianluca, whose favicon question inspired this tool.
    • 10 new language strings (TPL_ESSENTIAL_FAVICON_*, TPL_ESSENTIAL_FAVICONTOOL_*). The language file goes from 66 to 76 strings, with none removed.

    Modern social network support

    • Eight new social services, each with its own URL field and show/hide switch: Instagram, Threads, Bluesky, Mastodon, YouTube, TikTok, Pinterest and Discord. The URL fields default to #TYPE-URL-HERE and the switches to off, so nothing shows until you fill it in.
    • The Twitter slot is now X (formerly Twitter). The full set is X, Facebook, Instagram, Threads, Bluesky, Mastodon, LinkedIn, YouTube, TikTok, Vimeo, Pinterest, Discord and RSS (13).
    • Social links open with rel="noopener".

    Template options (administrator)

    • Custom CSS field (customcss, on the Header & Footer Custom Code tab), and support for a css/custom.css file. Both load after the compatibility stylesheet, so your rules win. The file is deliberately not listed in templateDetails.xml, so a template update can never overwrite or remove it, and the field is stored in the database.
    • Colour picker with transparency. New fields/colorpicker.php with Coloris (js/coloris.min.js, css/coloris.min.css, js/coloris.LICENSE.txt). 22 colour settings that were plain text boxes now open a picker with a transparency slider. Values are stored as 8-digit hex, so existing 6-digit colours stay exactly as they were.
    • New fields/adminui.php: help rows in the options run the full width of the form instead of a narrow strip.
    • Tabs renamed: Drop Down Menu, Header & Footer Custom Code, Built-in Slideshow and Theme (were “… Settings” and “Template Header And Footer Custom Code”).
    • Template options: 111 → 116 fields, 7 → 8 tabs.

    Defaults for a fresh install

    • The logo / site name and the slogan link to the home page, and the built-in slideshow is switched on and advances by itself on desktop and phones (logoLinked, cam_turnOn, cam_autoAdvance and cam_mobileAutoAdvance default to on). Existing sites keep their saved settings.

    Other additions

    • images/legacy-bluestork/: the five Joomla 2.5 admin icons (icon-48-component, -language, -module, -plugin, -themes) that the Joomla sample content links to. Joomla 2.5’s Bluestork admin template no longer exists, so those links returned 404.

    Changed

    Joomla 6 platform

    • Built for Joomla 6.2.0 (previous download: version string 11.11.2025 6.0.0, manifest written for Joomla 3.10).
    • templateDetails.xml: the Joomla 2.5 DOCTYPE is gone, the manifest version 3.10 → 6.1 with a targetplatform line, creation date 05/04/2013 → 2026-11-06, and version 11.11.2025 6.0.0 → 6.2.0. 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. fields/ is added to the file list and the unused utils/ folder is removed from it.

    J3 → J6 API migration

    • 13 Joomla 3 static class calls → 0. 12 were in the error page file (see Fixed) and one in html/mod_search/default.php (JRoute → Route). That override also reads the module class suffix from the module’s parameters, because Joomla 4+ no longer hands it to overrides.
    • 17 of the 28 PHP overrides changed in this release; most of that is output escaping (see Security). html/mod_login/default.php and html/mod_breadcrumbs/default.php now supply the login type and the module class suffix themselves instead of relying on variables Joomla 3 passed in.
    • The collapsible module styles html/layouts/chromes/toggleModule.php and toggleModule2.php no longer carry the MooTools Fx.Slide script (MooTools-era addEvent calls in the template: 5 → 0).
    • The Internet Explorer leftovers are gone from the page head: the conditional comments in index.php and the three IE stylesheet links in component.php.

    Log-in dialog

    • The site log-in dialog in index.php is now a Bootstrap 5 dialog: data-bs-toggle / data-bs-target on the opening link, modal-dialog modal-dialog-centered, a btn-close button and data-bs-dismiss on Close, in place of data-toggle and an inline jQuery hide.

    Menus and scripts

    • The desktop drop-down menus are driven by CSS and a few lines of plain JavaScript (.sfHover with a 500 ms close delay) instead of the Superfish and Supersubs plug-ins. Drop-downs are sized to their content, and a transparent bridge across the gap between a menu heading and its drop-down keeps the menu open while the pointer crosses it.
    • Scripts that index.php, component.php or the error page used to load and no longer do: html5.js (a remote copy), selectivizr-min.js, modernizr.js, imgSizer.js, selectnav.min.js, superfish.js, supersubs.js and jquery.mobile.customized.min.js, which raised a JavaScript error as it loaded under jQuery 3.7. The selectnav() call in the mod_menu override went with them.
    • jQuery stays. Joomla’s jQuery 3.7 still loads for the Camera slideshow (camera.js, camera.min.js, jquery.easing.1.3.js) and the log-in panel scripts. Template-side jQuery( / $( calls: 26 → 10.
    • The Drop Down Menu tab keeps its on/off switch and the 2- to 5-column width settings. The settings that only fed the old Superfish / Supersubs init are retired (see Removed).

    Look

    • Grey text on the footer band (module headings, latest-news and most-read links, contact lines, footer menu and copyright) is darker, #696969 in place of #7a7a7a, and the “Read more” buttons in four-column blogs use a darker blue, so both are easier to read.
    • Stylesheet references to images the package never contained are gone: two in css/template.css (top-small-menu-sep.gif, currency-button.png), three in css/layout.css (bot-l-bg.png, bot-r-bg.png, bot-m-bg.png) and ten in css/camera.css (blank.gif and patterns/overlay1.png to overlay9.png). The two glyphicon sprite rules in css/bootstrap.css are switched off.

    Fixed

    Error pages

    • The error page now loads. The 6.0.0 download shipped it as error_.php, a name Joomla never looks for, so every “page not found” and “access denied” fell back to Joomla’s bare system page with no menus, no template stylesheets and no viewport tag. The file is now error.php and written for Joomla 4+ (the old file used JError, JText and JFactory, 12 calls). 404 and 403 pages show inside the site’s own header, menus, sidebar, footer and phone navigation, and the message comes first on phones. Server errors (500 and above) still use Joomla’s plain system page, because the database or a module may be what failed.
    • Error pages and server details: an error caused by a missing item no longer prints the server’s file paths and a technical trace (outside Joomla’s debug mode), and a missing article by id answers with the proper 404 page instead of a 500.

    Logo and slogan

    • The logo and the slogan both link to the home page. The slogan had no link at all, and the logo’s link setting did nothing unless the template style had been saved once. The link is now on unless you switch it off (logoLinked defaults to on).
    • On a site installed at the domain root, the logo link pointed at the current page; it now always goes to the site’s home page.

    Pages and forms

    • Article categories page: the “+” button that opens the subcategories lines up with the category title instead of sitting below it, and keeps a gap when it wraps on a phone.
    • Log in and registration: the show password eye sits inside the password field, and the password field is as wide and as tall as the username field. Every field in a form takes the same height.
    • Pagination arrows: Joomla 4+’s icon-angle-left / -right / -double-left / -double-right buttons had no mapping in the template’s icon CSS, so they showed no arrow. They now show Font Awesome 6 arrows.
    • Sample content: the Extensions sub-category descriptions linked to icons in Joomla 2.5’s Bluestork admin template, which returns 404 on every modern site. They now point at images/legacy-bluestork/.

    Maintenance pass

    • Featured articles: in a one-column featured (home) view, tall intro articles were clipped to their title. They now show in full.
    • Search buttons: the global button margin could pull a search button away from its box; search buttons now have margin:0.
    • Version display: the version in templateDetails.xml, its description panel and the @version docblock in index.php all read 6.2.0 (2026-11-06).
    • With thanks to Michael Mullan, whose Expression bug report led to this maintenance pass across our templates.

    Removed

    Files removed (48)

    • Unused Bootstrap 2 copies (css/, 12 files): the css/bootstrap/ folder (bootstrap.css, bootstrap.min.css, bootstrap-extended.css, bootstrap-responsive.css, bootstrap-responsive.min.css, bootstrap-rtl.css, bootstrap-tooltip-extended.css), the archive css/bootstrap.zip, the Internet Explorer stylesheets css/ie.css and css/ie6.css, and css/reset.css and css/slideshow.css. The stylesheet the template loads, css/bootstrap.css, stays.
    • Scripts (js/ 27 → 7 files, 24 removed): jquery-1.8.1.min.js, jquery.noConflict.js, bootstrap.min.js, superfish.js, supersubs.js, selectnav.min.js, selectivizr-min.js, modernizr.js, imgSizer.js, flexibility.js, jquery.mobile.customized.min.js, dropkick.js, jquery.dropkick-1.0.0.js, jquery.selectric.js, jquery.backstretch.min.js, jquery.elevateZoom-3.0.8.min.js, jquery.equalHeights.js, jquery.nicescroll.min.js, jquery.plusanchor.js, jquery-eu-cookie-law-popup.js, owl.carousel.min.js, easypaginate.js, scrollReveal.min.js and parallax.js. Seventeen of these were not loaded by any page in 6.0.0 either. What stays in js/: camera.js, camera.min.js, jquery.easing.1.3.js, plus the new cs-jq-compat.js, cs-mobile.js, coloris.min.js and its licence file.
    • error_.php (replaced by error.php), html/modules.php (Joomla 3-style module chrome functions built on MooTools; Joomla 4+ uses the chromes in html/layouts/chromes/) and the stray archive html/com_content/category/blog_item.zip.
    • The old utils/ folder (9 files): admin-js.js (a Joomla 3-era admin script for the old checkbox switches), the js_colourchanger/ colour picker (jscolor.js and its four images), the two switch-*.png images, and bss_fontchanger.php, which nothing referenced.

    Retired settings

    • Five social slots removed with their switches: Google+, MySpace, StumbleUpon, Digg and Blogger.
    • The settings that went with the old drop-down menu scripts: dropheight, dropwidth, dropopacity, dropspeed and dropdownhandler1 (the minimum column width).

    Security

    • Output helpers added in index.php, 139 calls across the template. Every template setting written into the page is escaped for where it lands:
      • phEsc(): HTML text and attributes.
      • phRichText(): the site-name and slogan fields, which may contain simple markup. Joomla’s input filter keeps the markup but strips scripts, styles, iframes and on* event handlers.
      • phHexColor(), phCssToken(), phCssNum(), phCssDim(), phCssFont(), phCssSelector(), phCssUrl(): colours, sizes, fonts, selectors and image URLs written into the page’s CSS.
      • phJsStr(), phJsLit(): values written into the slideshow’s inline JavaScript.
    • Raw echo $this->params->get(…) output in index.php: 103 occurrences on 85 lines → 2 occurrences on 2 lines, the Header and Footer Custom Code fields, which are administrator-only by design.
    • htmlspecialchars / escape calls in the template: 37 → 76. Module titles, menu items and module content written into attributes are escaped in the module chromes and in mod_menu, mod_login, mod_breadcrumbs and mod_search, and in the category, featured and archive article lists.
    • The logo and slogan image alt text is plain escaped text instead of the raw rich-text field. The error page escapes the message it prints and casts the error code to a number.
    • Every PHP file in the template stops unless Joomla loads it (defined('_JEXEC') or die): 33 → 34 files.

    Quickstart

    A complete Joomla 6.2.0 site built from the Essential demo. It replaces the previous quickstart, an Akeeba backup archive (.jpa) restored with Kickstart.

    • Bundled extensions: Akeeba Backup Core 10.5.0, StageIt 6.6.2 and the English (en-GB) language pack 6.2.0.1, plus the Essential template package 6.2.0.
    • The site carries 52 published modules, 119 published menu items and 68 published articles, and the Smart Search index is built (141 links), so the site search returns results from the first visit.

    Package format

    • Standalone template: now a Joomla package, pkg_essential-6.2.0.zip (pkg_essential.xml), that installs the Essential template (tpl_essential.zip) and registers it in the package manager. It declares method="upgrade", so an existing Essential updates in place, and <blockChildUninstall>true</blockChildUninstall>, so the template is removed through the package rather than on its own.
    • Quickstart bundle: a complete Joomla 6.2.0 install with Essential, as described above.
    Earlier history and version numbering: the previous download was the 6.0.0 package dated 11.11.2025. From 6.2.0 the first three digits of the template version match the Joomla release it is built for; a later fix on the same Joomla release adds a fourth digit (6.2.0.1).

    Version 11.11.2025 6.0.0

    • Update - Template updated to Joomla 6.0.0
    • Minor Bugs fixed

    Version 04.07.2024 5.1.1

    • Update - Template updated to Joomla 5
    • Minor Bugs fixed

    Version 13.02.2024 5.0.2

    • Update - Template updated to Joomla 5

    Version 01.04.2023 4.2.8

    • Fixed - Template updated to be compatible with Joomla 4.2