WordPress plugin for Zest — a lightweight, zero-dependency GDPR/CCPA cookie consent toolkit with Shadow DOM isolation, script blocking, and cookie interception.
Looking for docs as a site owner? See the knowledge base or the WordPress.org readme (readme.txt).
Injects the Zest JS bundle into your site and adds a Settings → Cookie Consent screen where you configure everything without touching code:
- Consent banner, settings modal, floating widget — fully Shadow DOM encapsulated
- Script blocking — four modes (safe / manual / strict / doomsday), known trackers auto-detected
- Cookie & storage interception —
document.cookie,localStorage,sessionStoragewrites queue until consent - Do Not Track / GPC — three behaviors: auto-reject, preselect, or ignore
- Geo / jurisdiction gating — GDPR banner in the EU, nothing elsewhere (opt-in, via zest-geo gateway)
- Custom theme — accent color, corner radius, and a full 5-slot custom palette
- 12 languages with browser auto-detection
- Live preview of the banner inside the settings screen
Plugin 2.8.0 bundles Zest 2.8.0. Plugin versions now match the bundled library version.
This update fixes automatic initialization with data attributes, validates blocking modes, and adds Zest.updateConsent() and Zest.resolveGeo() to the full browser build. Existing WordPress settings are preserved.
- WordPress 5.2+
- PHP 7.4+
- Download the latest release and upload
zest-cmpto/wp-content/plugins/, or install through the WordPress plugins screen - Activate the plugin
- Go to Settings → Cookie Consent
# Local WordPress environment (http://localhost:8888, wp-admin login: zest/zest)
docker compose up -d
# Rebuild from a sibling zest checkout at tag v2.8.0
cd ../zest && npm ci && npm run build && cd -
./scripts/build.shSee DEVELOPMENT.md for the full dev guide (three-environment testing, translations, PHP compatibility checks).
zest-cmp.php # Main plugin file
includes/
class-zest-cmp-settings.php # Admin: Overview/Settings tabs, live preview
class-zest-cmp-enqueue.php # Frontend: bundle enqueue + ZestConfig output
uninstall.php # Drops plugin options on uninstall
languages/zest-cmp.pot # Translation template
scripts/build.sh # Copies the Zest bundle from ../zest into dist/
dist/ is gitignored — it is built on deploy (see .github/workflows/deploy.yml).
GPL-3.0-or-later. The bundled Zest JS library is MIT-licensed.