The System - Google Tag Manager ACL plugin enhances your Joomla site by linking Google Consent Mode v2 signals to Joomla’s Access Control List (ACL) system. Designed to extend the System - Google Tag Manager plugin and work seamlessly with System - EU e-Privacy Directive, it dynamically adjusts access levels—including for guest users—based on consent preferences. This documentation will guide you through installing and configuring the plugin to personalize content effectively while staying privacy-compliant.
Installation
- Download: Get the latest version of System - Google Tag Manager ACL (v5.0.0 or higher) from RicheyWeb.
- Install: In your Joomla administrator panel, go to System > Manage > Extensions > Install, upload the plugin package, and install it.
- Enable: Navigate to System > Extensions > Plugins, search for "System - Google Tag Manager ACL," and enable it.
- Prerequisites: Ensure System - Google Tag Manager and System - EU e-Privacy Directive are installed and configured, as this plugin relies on their consent data.
Configuration
Once enabled, configure the plugin via System > Plugins > System - Google Tag Manager ACL. The settings allow you to map each Google Consent Mode v2 signal to a Joomla access level. Here’s what each option does:
- Ad Storage
- Label: ad_storage
- What It Does: Assign an access level to users who consent to storing advertising-related data (e.g., cookies for ad tracking). When set, users who approve this signal gain access to content restricted to that level—like ad banners or sponsored sections—enhancing monetization opportunities.
- Ad User Data
- Label: ad_user_data
- What It Does: Links an access level to users who allow their data to be used for advertising purposes. Assigning a level here lets you show ad-related content or features (e.g., retargeting prompts) only to those who’ve opted in, keeping non-consenters excluded.
- Ad Personalization
- Label: ad_personalization
- What It Does: Ties an access level to users who agree to personalized ads. Set this to unlock tailored ad experiences—like product recommendations—visible only to consenting users, balancing personalization with privacy.
- Analytics Storage
- Label: analytics_storage
- What It Does: Maps an access level to users who permit analytics tracking (e.g., Google Analytics cookies). Use this to grant access to analytics-driven content—like usage-based dashboards—or simply to segment users for internal insights.
- Functionality Storage
- Label: functionality_storage
- What It Does: Assigns an access level to users who consent to cookies that enable site functionality (e.g., saving preferences). This lets you offer enhanced features—like saved settings or interactive tools—to those who approve, while keeping them off-limits to others.
- Personalization Storage
- Label: personalization_storage
- What It Does: Connects an access level to users who allow storage for personalized content (e.g., tailored layouts). Set this to reveal customized site elements—like user-specific menus—only to those who’ve given the green light.
- Security Storage
- Label: security_storage
- What It Does: Links an access level to users who consent to security-related storage (e.g., authentication cookies). While typically always allowed, assigning a level here could enable advanced security features—like two-factor prompts—for consenting users.
For each setting, select a Joomla access level (e.g., "Public," "Registered," or a custom one) from the dropdown. Choosing "- Ignore -" means no access level is assigned for that signal, even if consent is granted, leaving content visibility unchanged.
Usage Guide
- Create User Groups and Access Levels: Go to Users > User Groups and Access Levels in Joomla and create groups and levels for the signals you want to leverage (e.g., "Ad Consent," "Functionality Consent"). Tie these to user groups as needed.
- Configure Mappings: In the plugin settings, assign each signal to an access level. For instance, set "ad_storage" to "Ad Consent" to grant that level when users approve ad storage.
- Test It Out: Visit your site as a guest, use the System - EU e-Privacy Directive popup to adjust consents, and check that content visibility shifts accordingly.
- Guest Access: Unlike Joomla’s default ACL, this plugin lets guests join additional access levels beyond "Guest" based on consent, broadening your personalization reach.
Notes
Consent data comes from the plg_sytem_gtag_consent cookie managed by System - Google Tag Manager.