Introduction
Content Restriction Popup 2.0 shows a modern login or module dialog to guests before they can browse protected content. Embed a Login module (or any site module) inside a Pop Any Article style popup with blur overlay, themes, and smart open triggers.
What do you get?
- Site module — publish on any menu where guests should sign in first
- Vanilla JS dialog — no jQuery, no FancyBox
- Flexible gates — strict force login or softer dismiss with Continue browsing
Highlights in 2.0
- Themes: Light, Dark, Soft, Brand + accent colour and radius
- Effects: Zoom, Fade, Slide up with blur overlay
- Triggers: page load, delay, scroll %, exit intent
- Frequency: every visit, once per session, every N days
- Title, intro, and footer shell around embedded module content
- Body portal, focus trap, scroll lock, responsive login form styling
Works with
- Joomla 4, 5, and 6
- PHP 8.0+
- Phones, tablets, and desktops
Note: Joomla 3.x is not supported in version 2.0. Use the legacy 1.x release if your site still runs Joomla 3.
Tip: Start with Theme = Light, Trigger = On page load, Force login = Yes, and select a dedicated Login module.
Installation
Step 1 — Download
- Download mod_content_restriction_2.0.zip.
- Keep the zip file ready for upload.
Step 2 — Install in Joomla
- Log in to the Joomla administrator.
- Go to System > Install > Extensions.
- Open the Upload Package File tab.
- Choose mod_content_restriction_2.0.zip.
- Click Upload & Install and wait for the success message.
Step 3 — Publish the module
- Go to Content > Site Modules.
- Open Content Restriction Popup (or create a new instance).
- Set Status to Published and Show Title to Hide.
- Choose a template position (debug is fine).
- Assign the menu items where the gate should appear.
- Save and clear cache via System > Clear Cache.
Requirements: Joomla 4 / 5 / 6 only. Joomla 3.x is not supported.
Content
Open the module and use the Content tab for the dialog shell around your embedded module.
- Module to show: Select the module displayed inside the popup. Usually a Login module. Any published front-end module works except another Content Restriction Popup.
- Dialog title: Heading above the embedded content (for example Members only).
- Intro text: Short explanation shown under the title.
- Footer note: Optional line below the form or module (for example account help text).
- Guests only: When enabled, logged-in visitors never see the popup. Recommended for login gates.
Recommended setup
- Create a dedicated Login module with your branded copy or demo credentials.
- Hide that Login module title and assign it only where needed, or leave it unpublished on the page layout if you only use it inside this popup.
- Select that Login module in Module to show.
Layout & Theme
The Layout tab controls the modern dialog presentation (Pop Any Article style).
- Theme: Light, Dark, Soft, or Brand.
- Open effect: Zoom, Fade, or Slide up.
- Accent colour: Primary button and highlight colour.
- Corner radius: Rounded dialog corners (0 to 32 px).
- Dialog width: Desktop width in pixels (mobile respects max width).
- Max width: Responsive cap (for example 92vw).
- Max height: Optional scroll limit for tall embedded modules.
- Overlay opacity: Backdrop strength from 0 to 1.
- Overlay blur: Glass blur behind the dialog (0 to 24 px).
Tip: Light + Zoom is a strong default for login gates. Use Dark for dramatic members-only pages or Brand when you want accent-driven styling.
Behavior
The Behavior tab defines when the popup appears and how strict the gate is.
Open trigger
- On page load: Opens as soon as the page is ready (best for members-only gates).
- After delay: Waits the number of milliseconds you set in Delay (ms).
- On scroll: Opens after the visitor scrolls past the chosen percent.
- Exit intent: Opens when the cursor leaves toward the top of the viewport.
Show frequency
- Every visit: Shows again on each page load (when close is allowed).
- Once per session: Remembers dismiss for the browser session.
- Once every N days: Remembers dismiss for the number of days you set.
Gate options
- Force login: Keeps the page locked until the visitor signs in.
- Allow close: Shows a close control and enables softer dismiss options.
- Close on overlay click / Escape: Optional when Allow close is on.
- Show continue button: Adds a secondary Continue browsing action.
- Lock page scroll: Stops background scrolling while the dialog is open.
Demos & Tips
Demo presets you can copy
- Members Only: On page load + Force login = Yes + Allow close = No
- Delayed Welcome: After delay (1200 ms) + Soft theme + Slide up
- Exit Reminder: Exit intent + Allow close + Once per session
- Soft Dismiss: On scroll (25%) + Allow close + Continue browsing + Once per session
Advanced
- Debug: Shows the popup even for logged-in users. Use only while testing.
- Module Class Suffix: Add a custom CSS class for template-level overrides.
Troubleshooting
- Popup not showing? Confirm the module is Published, assigned to the current menu, and you are browsing as a guest (or Debug is on).
- Login module empty? Pick a published Login module in Content > Module to show.
- Still seeing old FancyBox styling? You are on legacy 1.x files. Install 2.0 and clear Joomla cache.
- Dialog flashes in the module position? Clear cache. Version 2.0 portals the dialog to the document body.
Docs: joomlax.com/documentation/content-restriction-popup · Support: support.joomlax.com