

The consent banner with Accept / Reject and a preferences link.
LandexHub Consent is a lightweight, configurable cookie consent banner (cookie bar) for WordPress. It sets the Google Consent Mode v2 default before the Google tags it loads, lets you gate third-party scripts behind consent, checks your front page for sources that load before the visitor decides, and records a privacy-minimal proof of consent — all stored in your own WordPress. No visitor IP address is stored in the consent log, and the plugin sends no telemetry and no data of its own anywhere. Google tags you choose to configure talk to Google, as described under External services.
Installation and first setup, step by step:
Features
denied default is printed early in <head>, before the GTM container or gtag.js set in this plugin. Switch to basic if the gtag.js measurement ID set in this plugin should not load at all until the visitor agrees. A GTM container always loads; what each tag inside it does before consent is set in GTM.type="text/plain" and data-consent-category (an external one keeps its address in data-src), or gate an enqueued script with the LandexHub_Consent::block_handle() PHP helper. The plugin runs it once the visitor consents to that category.[landexhub_consent_services] shortcode or the “Services & cookies overview” block. A bundled catalog of 66 known services adds names, cookies and privacy policy links. Codes the site needs to work, such as payments, spam protection or pickup point maps, are listed apart as functional codes: they run without consent and are not reported as a problem.Privacy
The plugin reports nothing about your site or your visitors to anyone. The consent log is written to a table in your own site, without IP addresses. Scripts you configure yourself (GTM, gtag.js) are loaded from Google.
Plugin author: LandexHub — terms, privacy policy. LandexHub also makes a separate, optional add-on; this plugin does not need it.
Source code
Nothing in this plugin is minified, compressed or obfuscated. The JavaScript in assets/js/ is compiled from TypeScript, and those TypeScript sources ship with the plugin in the src/ folder together with the compiler configuration and build instructions (src/README.md). One command with the TypeScript compiler reproduces the shipped files byte for byte.
This plugin does not call home and sends no telemetry. Depending on what you configure, it talks to the following services:
Google Tag Manager / Google tag (gtag.js) — optional, disabled by default. If you enter your own GTM container ID or gtag.js measurement ID in the plugin settings, the plugin embeds the standard Google snippet, and every visitor’s browser then loads the tag from www.googletagmanager.com (requests gtm.js or gtag/js). This is required for the measurement you configured to work. The plugin prints the Google Consent Mode v2 denied default before these tags, unless a developer turns that default off with the landexhub_consent_emit_consent_default filter. With a GTM container the plugin also prints Google’s <noscript> frame right after the opening <body> tag (in themes that call wp_body_open()), as in Google’s installation instructions: visitors without JavaScript then load ns.html from www.googletagmanager.com. Without JavaScript there is no consent bar and no Consent Mode default, so that request carries no consent state. What Google receives with those requests (IP address, user agent, page URL, consent state signals) is described in Google’s documentation: Google Terms of Service, Google Privacy Policy. If you also enter your own tag domain (for a server-side Google Tag Manager container or the Google tag gateway), the same requests go to that address instead of www.googletagmanager.com: to a server you or your provider run, which may pass data on to Google as you configure it. If you leave the ID empty, this plugin loads nothing from Google or from that address.
Your own site (loopback) — the site check fetches your own homepage over HTTP (a loopback request to your own server) to scan the HTML for third-party scripts and the Google tag order. No external service is involved.
There are no other remote requests: no telemetry, no fonts, no CDNs. Links to the LandexHub website open in a new tab and send nothing by themselves.