Skip to content

Module positions are the building blocks of a Joomla template layout. Signal Dark defines 36 positions that cover every section of a page — from navigation to footer. Every position is rendered in the template. Nothing is declared but unused.

Position Map

This is the actual layout of Signal Dark. Each box represents a module position in the order it appears in the template. Click any position to jump to its description.

Position Reference

search

Search module position in the main navigation bar. Holds the Smart Search module that powers the search overlay. Toggled on/off via the showNavSearch template parameter.

menu

Primary navigation. Sticky at the top of the viewport. Renders the main menu with dropdown support, hamburger toggle on mobile, and the "More" overflow menu.

subnav

Secondary navigation bar directly below the main nav. Also sticky. Used for category links, demo navigation, or any auxiliary menu. Collapses to a scrollable row on mobile.

announcement

Full-width dismissible banner between the nav and hero. Useful for promotions, site updates, or alerts. Dismiss state can be stored in localStorage.

hero

Full-width hero section with heading, subtitle, CTA buttons, and a subtle grid pattern background. Controlled by template parameters. Hidden on article and category pages.

after-hero

Sits between the hero and the content sections. Useful for trust badges, partner logos, or a brief intro that doesn't belong in the hero itself.

featured

Editorial cards section. On the homepage this is a 2-column grid of handpicked content cards. Place a Custom HTML module here with your curated highlights.

top-a / top-b

Two side-by-side content rows below the featured section. When both are populated, they form a 2-column layout. When only one is active, it takes full width. Good for latest articles, category highlights, or widgets.

ad-banner

Leaderboard ad slot between the top content rows and the main component area. Sized for standard 728×90 or responsive ad units. Only renders when a module is assigned.

ad-banner-row

Second banner ad slot directly below ad-banner. Use for a second leaderboard unit, sponsor bar, or any full-width content that pairs with the primary banner ad.

breadcrumbs

Page trail above the main content area. Assign Joomla's Breadcrumbs module here to show the navigation path. Styled to match the dark theme.

main-top

Above the component output but inside the content container. Good for breadcrumbs, demo navigation pills, or contextual content that should appear on every page.

sidebar-left / sidebar-right

Sidebars flank the main component area. Both support sticky scrolling with styled scrollbars. Assigning a module to either position automatically triggers the sidebar grid layout — no template configuration needed.

sidebar-top

Above the main sidebar modules on the right side. Good for author bios, call-to-action cards, or featured content that should appear before the regular sidebar widgets.

ad-article / ad-sidebar

Ad slots within the content area. ad-article sits below the article body. ad-sidebar sits below the sidebar modules. Both use dotted borders to visually distinguish ads from editorial content.

ad-article-row

Full-width ad row below the article and sidebar ad slots. Spans the entire content width regardless of sidebar layout. Good for a secondary ad unit or call-to-action banner.

content-bottom

Below the article body and ad slots, but still inside the primary content column. Use for related articles, comments, or post-article calls to action.

main-bottom

Below the component area, full width. Renders with the html5 module chrome so each module gets a heading and wrapper. Used on the demo site for module showcases.

bottom-a / bottom-b

Two side-by-side content rows below the main content area, before the shop section. Same layout behaviour as top-a / top-b — both populated gives a 2-column grid, one alone takes full width.

shop-intro / marketplace

Two-part commerce section. shop-intro carries the headline and lead text. marketplace holds the product cards. Both share a dark panel background. Separation allows the intro to stand alone visually.

newsletter

Email signup section below the shop. Centered layout with heading, description, and input field. Currently a placeholder — drop in your Mailchimp, ConvertKit, or custom form HTML.

ad-footer

Pre-footer ad slot. Sits between the newsletter and the footer columns. Same dotted-border ad treatment as the other ad positions.

partner

Partner or sponsor logos section between the ad-footer and footer columns. Use for technology partners, sponsors, or affiliate badges. Renders as a full-width row.

footer-a / footer-b / footer-c

Three-column footer grid. On the live site: about text, topic links, and a services CTA. On mobile the columns stack vertically. Each column is a separate module for easy content management.

footer

Copyright bar at the very bottom. Contains the site name, year, and attribution. Sits below the three-column footer.

footer-logo / footer-copy / footer-credit

Three-part footer bottom bar. footer-logo holds the site logo/name, footer-copy holds the copyright notice, and footer-credit holds the powered-by credit line. Each is an individual module that can be edited or hidden independently. Falls back to template defaults when no module is assigned.

debug

Debug output position. Only visible when Joomla's debug mode is enabled. Renders system debug information outside the main layout so it doesn't break the page design.

How it works

Every position uses a conditional check — if ($this->countModules('position-name')) — so the HTML wrapper only renders when a module is assigned. No empty divs, no wasted markup. Assign a module in Joomla admin, and the position appears. Remove it, and the position vanishes.

Sidebars trigger a grid layout automatically. If sidebar-right has a module, the content area switches from single-column to a sidebar layout. Same with sidebar-left. Both can be active simultaneously for a three-column layout. The sidebars use sticky positioning and styled scrollbars that match the dark theme.

Ad positions use dotted borders and amber-tinted labels so they're visually distinct from editorial content. They're sized for standard IAB formats but accept any content — you're not locked into specific ad dimensions.

The AI Director

Enjoy Building Joomla Sites with AI

The most enjoyable way to build a Joomla site. Open it in VS Code → — describe what you want, Claude Code → reads the briefing, runs the stack, writes the code. You just keep the conversation going.

A new paradigm.

Built & designed by Weblio Sites from 9 900 NOK — built to outperform

This site was designed and built by Weblio — a Norwegian web agency specialising in fast, professional websites and AI-powered tools for businesses that want to move faster than their competition. Direct communication, honest pricing, no surprises.

Visit Weblio.no →