WP Manifestindependent plugin directory
manifest / privacy / tuedion-cookie

Tuedion Cookie

Professional WordPress cookie consent and privacy management plugin by Tuedion, powered by Orest Bida's CookieConsent.

by Tuedion · github.com/tuedion/tuedion-cookie · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/tuedion/tuedion-cookie/archive/refs/heads/main.zip

Tuedion Cookie — Enterprise WordPress Consent Management & Cookie Banner

Tuedion Cookie is an enterprise-grade, privacy-first WordPress plugin that gives site owners, agencies, and developers complete control over visitor consent management, tracker blocking, and legal compliance (GDPR, ePrivacy, CCPA).

Built natively on top of Orest Bida’s high-performance vanilla-cookieconsent (v3.1.0) and iframemanager (v1.2.5), Tuedion Cookie delivers a lightweight, lightning-fast frontend footprint (< 25KB gzipped combined) with zero external cloud subscriptions or vendor lock-in.


Table of Contents


🚀 Key Features

1. Local-First & Zero Cloud Lock-In

  • All JavaScript bundles, stylesheets, and assets are hosted locally on your WordPress server.
  • No remote external CDNs, tracking telemetry, or third-party monthly subscriptions.

2. Granular Category & Service Controls

  • 4 default categories out-of-the-box: Strictly Necessary, Functionality, Analytics, and Marketing.
  • Granular service-level toggles (e.g. YouTube, Google Maps, Hotjar, Facebook Pixel) allowing visitors to accept or reject individual services independently.

3. Dynamic Iframe Enforcement & Placeholder Cards

  • Deny-before-consent blocking for YouTube, Vimeo, Google Maps, and generic iframes.
  • Automatic transformation of blocked embeds into interactive, responsive Orest Bida placeholder cards featuring video cover thumbnails, custom notices, and single-click unlock buttons ("Çerezleri Kabul Et ve İzle", "Her Zaman İzin Ver").
  • Includes an integrated Window.prototype.postMessage shield that absorbs polling loops from Elementor and YouTube API on blocked frames, eliminating console origin errors.

4. Google Consent Mode v2 (CoExists with Site Kit & GTM)

  • Injects early <head> default signals (priority 0) before any tracker script evaluates.
  • Native gtag updates for ad_storage, analytics_storage, ad_user_data, and ad_personalization.
  • Fires custom GTM dataLayer event: tuedion_consent_update.
  • Automatic detection and collision warning if Google Site Kit or other plugins inject redundant consent defaults.

5. Persistent Floating Privacy Trigger (WCAG 2.2 AA)

  • Allows visitors to easily reopen and adjust their consent preferences anytime.
  • Customizable corner positions (bottom-left, bottom-right, top-left, top-right), offsets, and mobile safe-area insets (env(safe-area-inset-bottom)).
  • Full keyboard navigation accessibility (Tab, Enter, Escape) with high-contrast visible focus rings.

6. GDPR Consent Audit Logging (Art. 7(1))

  • Zero database writes when logging is disabled.
  • Full IP anonymization via wp_privacy_anonymize_ip(), non-reversible User Agent hashing, and unique consent UUIDs.
  • Automatic retention cleanup via daily WP-Cron and one-click CSV audit trail export.

7. 9 Built-in Languages & True RTL Mirroring

  • Out-of-the-box support for: English, Turkish, German, French, Spanish, Italian, Dutch, Arabic, and Russian.
  • Automatic language detection based on document locale (document.documentElement.lang).
  • Full Right-to-Left (RTL) layout mirroring for Arabic and Hebrew locales.

⚡ Why Tuedion Cookie?

Capability Tuedion Cookie Traditional SaaS Cloud Plugins
Data Privacy 100% On-Premise / Self-Hosted Visitor IPs routed through US/EU SaaS servers
Pricing Free & Open Source (GPLv2+) Recurring monthly subscription per domain/pageviews
Frontend Weight < 25KB gzipped (Vanilla JS) 80KB – 250KB heavy bundled frameworks
PageSpeed Impact Negligible (0ms render block) High (delaying LCP, CLS shifts)
Iframe Handling Dynamic placeholders with cover preview Empty white boxes or broken layouts
Cache Compatibility Native bypass rules for 12+ caching engines Prone to serving stale cached consent state

🧩 Supported Ecosystem & Compatibility

Page Builders & Themes

  • Elementor & Elementor Pro: Full support for Video widgets, Google Maps embeds, dynamic popups, and custom image overlays.
  • Gutenberg / Block Editor: Embed block filtering, custom HTML block isolation.
  • WooCommerce: Protection of essential cart, session, and checkout cookies with zero checkout disruption.

Caching & Speed Engines

  • WP Rocket: Automatically excludes iframes from rocket_lazyload_iframe, bypasses Delay JS for consent controllers, and flushes cache on version update.
  • LiteSpeed Cache: ESI and cookie bypass integration.
  • Autoptimize, SiteGround Optimizer, Perfmatters, FlyingPress, WP-Optimize, W3 Total Cache, WP Super Cache, Cache Enabler, Cloudflare Rocket Loader.

Form & Anti-Spam Plugins

  • Contact Form 7, WPForms, Gravity Forms, Fluent Forms (reCAPTCHA and hCaptcha challenge notices).

📂 Architecture & Directory Structure

tuedion-cookie/
├── assets/
│   ├── admin/             # React/Vanilla Admin UI scripts and styles
│   ├── public/
│   │   ├── css/           # tuedion-cookie.css (theme overrides & Elementor rules)
│   │   └── js/            # bootstrap.js (orchestrator & postMessage shield), event-bridge.js, persistent-trigger.js
│   └── vendor/
│       ├── cookieconsent/ # Upstream Orest Bida CookieConsent v3.1.0
│       └── iframemanager/ # Upstream Orest Bida IframeManager v1.2.5
├── includes/
│   ├── Admin/             # Admin menus, dashboard pages, wizard, settings
│   ├── Consent/           # Frontend controller, IframeEnforcer, ScriptEnforcer
│   ├── Core/              # Plugin bootstrap, autoloader, lifecycle hooks
│   ├── Diagnostics/       # Scanner, system profiler, debugger
│   ├── I18n/              # Language dictionaries, translation manager
│   ├── Integrations/      # Adapters (Elementor, WooCommerce, Forms, CacheCompatibility)
│   │   └── Google/        # ConsentModeV2 implementation
│   ├── Logs/              # Audit logger, CSV exporter, retention cleaner
│   └── Settings/          # Repository, defaults, validator
├── languages/             # .po/.mo localization files
├── readme.txt             # WordPress.org standard metadata
├── README.md              # GitHub documentation
└── tuedion-cookie.php     # Main entrypoint

📥 Installation & Quick Start

  1. Download or Clone: Clone this repository directly into your WordPress plugins directory:
    cd wp-content/plugins
    git clone https://github.com/tuedion/tuedion-cookie.git
  2. Activate: Go to WP Admin -> Plugins and activate Tuedion Cookie.
  3. Configure:
    • Navigate to Tuedion Cookie in the admin sidebar.
    • Run the initial Quick Setup Wizard to select your legal jurisdiction and categories.
    • Choose or customize your color palette with the real-time Split-Screen Preview Sandbox.
    • Enable Google Consent Mode v2 if you are running Google Analytics 4 or Google Ads.

🛠 Developer API & Hooks

Client-Side JavaScript API

// Check if a category is accepted
window.CookieConsent.acceptedCategory('analytics');

// Open the Preferences Modal programmatically
window.CookieConsent.showPreferences();

// Re-synchronize managed iframes after dynamic DOM injection
window.TuedionCookie.activateIframes();

// Listen for consent changes via Tuedion Event Bridge
window.addEventListener('tuedion:consent', function(event) {
    console.log('Consent saved:', event.detail);
});

Server-Side PHP Filters

// Enforce custom iframes in any custom post type or template
$safe_html = \Tuedion\CookieConsent\Consent\IframeEnforcer::enforce($custom_html);

// Add custom bypass handles to ScriptEnforcer
add_filter('tuedion_cookie_immune_script_handles', function(array $handles): array {
    $handles[] = 'my-essential-script';
    return $handles;
});

Policy Page Shortcodes

Tuedion Cookie includes ready-to-use shortcodes for your Cookie Policy and Privacy Policy pages:

  • [tuedion_cookie_declaration] — Renders a complete, responsive declaration of all active cookies and tracking services categorized by purpose, with localized Cookie name, Domain, Duration (lifespan), Description, and a "Change your consent" trigger button.
  • [tuedion_cookie_table category="analytics"] — Renders an isolated cookie table for a specific category (necessary, functionality, analytics, marketing).
  • [tuedion_cookie_policy_link] — Outputs an inline button to open the Cookie Preferences center from anywhere in your content.

📝 Changelog

= 1.3.1 =

  • Scheduled Automated Scanner: Integrated continuous background site crawl with daily/weekly/monthly frequency via WP-Cron.
  • Drift Detection & Email Alerts: Instant notification dispatched to security/admin contact upon discovering new unclassified cookies.
  • Admin Quick Navigation: Added anchor jump menu on Settings page for instant access to Scheduled Scanner and compliance tools.
  • Category Console Integration: Added Automated Scan status badge and configuration shortcut directly inside Categories & Services tracker hero.
  • Auth Cookie Visibility Fix: Prevented WordPress login session cookies (wordpress_logged_in_*) from showing in public declaration table on cached pages for guest visitors.
  • Cache Busting: Incremented runtime transient cache key to v131 for immediate opcache, object cache, and transient invalidation.

= 1.3.0 =

  • GDPR Cookie Lifespan Compliance: Added mandatory cookie expiration (duration) column to CookieTableBuilder across all 9 supported languages (GDPR Art. 13 & EDPB compliance).
  • Iframemanager 9-Language Dictionary: Expanded embed blocking notice and action buttons to tr, en, de, fr, es, it, nl, ar, ru.
  • Live Declaration Shortcodes: Added [tuedion_cookie_declaration] and [tuedion_cookie_table] for automated compliance policy pages.
  • Scheduled WP-Cron Cookie Scanner: Added continuous automated background site crawl with instant email alerts when newly installed unclassified cookies are discovered.
  • Global Output Buffer Inline Script Blocker: Intercepts and pauses hardcoded inline `