WorkMore Cookie Crumb – Cookie Consent Banner

Descrición

WorkMore Cookie Crumb is a cookie consent banner for WordPress that really blocks tracking scripts — Google Analytics, Google Tag Manager, Google Ads, Meta Pixel, YouTube and Google Maps embeds — until a visitor agrees. It comes with a cookie scanner, a consent log and Google Consent Mode v2, and it lives inside your WordPress site: no account to open, no outside service, no page view quota, free.

It is made for sites that have to ask before they track — under the GDPR and the ePrivacy rules in Europe, Thailand’s PDPA, and laws like them — and for anyone who wants a cookie notice that does what it says.

It really holds scripts back. Scripts, embedded videos and maps, and tracking pixels of the services you list do not run and do not load before a visitor allows their category — those written in the page, and those other scripts add later. A held-back video or map shows a placeholder with a button that allows it. When a visitor withdraws consent, the listed cookies your site set are deleted from their browser.

It leaves your site fast. Every visitor gets the same page; what runs is decided in the browser, so page caches and CDNs work without any configuration. The visitor side is one small inline script and one deferred file of about 7 KB, with no library, no font and no request to another server. The banner does not push your content around as it appears.

It keeps a record. Each answer is one row in a consent log on your own site, found by the consent ID the visitor sees in the cookie settings window, and exported as CSV. A record holds as little as it takes: no full IP address, no cookie values, nothing tied to a user account. The log keeps the last 90 days.

Why WorkMore Cookie Crumb

  • Free and complete: no account, no sign-up, no limit on page views or visitors, no “upgrade to unlock”.
  • Opt-in that works: nothing runs before the answer — scripts in the page, scripts added later, iframes and pixels.
  • Fast: about 7 KB for visitors, no jQuery, no font, no request to another server; page caches and CDNs need no setup.
  • Your data stays yours: answers are kept in your own database, with as little about the visitor as a record needs.
  • English and Thai ready, any other language added in minutes.

What you get

  • A banner and a cookie settings window, in any number of languages, with words ready in English and Thai. Two ways of asking: consent first, or notice only.
  • A setup wizard: scan the site, sort what was found, look at the banner on your own pages, publish.
  • A cookie scan that opens your pages in your own browser the way a visitor gets them, and lists the cookies they set and what they load from other sites, with a category suggested where the service is known. Once the banner is published, it also shows whatever still loads before a visitor answers.
  • Known services to start from: Google Analytics, Google Tag Manager, Google Ads, YouTube, Google Maps, Meta Pixel and Facebook embeds, and the cookies of WordPress and WooCommerce themselves. Anything else is added by hand: a cookie by its name, a script by a piece of its address.
  • Google Consent Mode v2 signals, and the WP Consent API for plugins that ask it.
  • Draft and publish: you edit a draft with a live preview on your real site at desktop, tablet and phone widths. Visitors see nothing new until you publish, and each record names the version of the banner the visitor answered.
  • A dashboard: how many accepted, rejected or chose, which categories were allowed, how that changed over time, and page views — for the last 24 hours, 7 or 28 days, 3 or 6 months, or two dates of your choosing. Point at a chart to read its numbers.
  • Two looks for the plugin’s own screen, chosen under Settings: a roomier, more modern one to start with, and a classic one in the plain WordPress style that loads nothing extra. Your visitors get the same either way.
  • A widget on the WordPress Dashboard with the consent rate, the answers by kind and how much room the records take — drawn on the server, with no script.
  • A button on every page, a link to #cookie-settings or the [wmcc_settings] shortcode, so visitors can change their answer whenever they like.
  • Light or dark, your own main color with text that stays readable on it, top or bottom of the page, and the banner only on the pages you choose.
  • An optional “Powered by WorkMore Cookie Crumb” line on the banner — off unless you switch it on.
  • For theme developers: the banner keeps to itself (your theme’s styles do not reach it by accident), and can be restyled on purpose through a documented set of CSS custom properties and named parts.
  • Made to be used by everyone: keyboard use, the names and roles a screen reader announces, contrast, small screens and reduced motion are part of the plugin’s test suite.

A tool, not legal advice

The plugin is a tool. It does not by itself make a site comply with any law, and nothing in it is legal advice: which cookies need consent, how to ask and how long to keep a record depend on the law that applies to your site.

Pro add-on

Everything above is free and complete. A separate plugin, WorkMore Cookie Crumb Pro, sold on workmore.connextsystem.com, sends consent records on to a database of your own and adds a design screen for the banner — more positions, a logo, colors and sizes of single parts, button styles, rounded corners — a health check of your settings and a registry of services common in Thailand. Inside this plugin the add-on is only mentioned on the “Upgrade to Pro” tab; nothing here is locked or limited.

Source code

The plugin’s JavaScript ships minified for performance (assets/admin.js, assets/guard.js, assets/banner.js, assets/probe.js); the human-readable source is included in the plugin’s src/ directory together with the build configuration (vite.config.js).

External services

This plugin connects to no external service. Its PHP makes no request to another server, and the scripts it puts on your pages talk to your own site only — not to us, not to Google, not to Meta.

Names of other companies’ services do stand in its code (includes/Registry/Registry.php: googletagmanager.com/gtag/js, connect.facebook.net, maps.googleapis.com/maps/api/js and others). They are a list for recognising tags your site already has: pieces of addresses that are compared with the scripts and frames of your pages, so that the plugin can hold those back until a visitor allows their category, suggest a category for them and name them in the cookie scan. The plugin never requests one of these addresses and adds none of these services to a site.

What a site owner should know all the same:

  • The services of your own site. A script or frame that was held back runs once the visitor allows its category, exactly as it would without this plugin, and then reaches its service as you set it up. Which services those are and what they receive is decided by your site — its theme, its other plugins, the tags you added — and not by this plugin. The ones the plugin recognises are Google Analytics, Google Tag Manager, Google Ads, YouTube and Google Maps (Google: terms of service, privacy policy) and Meta Pixel and Facebook embeds (Meta: terms of service, privacy policy).
  • Google Consent Mode. The plugin writes the visitor’s answer for each kind of use (“granted” or “denied”) into dataLayer, a variable of the page in the visitor’s browser, before they answer and again when they do. The plugin sends it nowhere. If your site has a Google tag, that tag reads it and passes it on to Google with its own requests; on a site without one it stays in the page.
  • The cookie scan opens your own pages in your own browser. While it runs, the trackers of those pages run once, as they would for a visitor who allowed everything. What the scan finds is kept in your site’s database.

Capturas

Instalación

  1. Install the plugin under Plugins Add New, or upload the zip under Plugins Add New Upload Plugin.
  2. Activate it.
  3. Open Settings Cookie Crumb. The setup leads from a scan of your site to a published banner in four steps; it can be skipped, and everything in it can be changed afterwards.

Nothing changes for your visitors until you press “Publish banner”.

Preguntas frecuentes

Is it free? Is there a limit on page views or visitors?

It is free, with no limit: no account to open, no page view quota, no visitor count that stops the banner. Everything this plugin does runs on your own site. A separate Pro add-on exists for those who want more (see “Pro add-on” above); nothing in this plugin is locked without it.

Does it make my site GDPR or PDPA compliant?

No plugin can promise that by itself — compliance depends on what your site does, the law that applies to it and how you set things up. What this plugin gives you are the tools those laws ask for: consent before tracking (opt-in), a “Reject all” as easy as “Accept all”, consent by category, a way to change the answer at any time, and a record of each answer. It is not legal advice.

Does it block YouTube videos, Google Maps and other embeds until consent?

Yes. An embedded YouTube video, Google Map or Facebook post does not load before the visitor allows its category; a placeholder with a button stands in its place, and the button allows it. Any other embed can be held back by a rule with a piece of its address.

Does it work with WooCommerce?

Yes. It recognises WooCommerce’s own cookies (cart, session) and its order attribution (sbjs_*), the cookie scan reads a shop’s own pages, and the WP Consent API tells WooCommerce what the visitor allowed.

Does it work with a page cache or a CDN?

Yes. The server sends the same page to every visitor and never reads the visitor’s answer; what runs is decided in the browser. Publishing the banner asks the cache plugins and hosts the plugin knows to clear their page cache (WP Rocket, LiteSpeed Cache, W3 Total Cache, WP Super Cache, WP Fastest Cache, Cache Enabler, WP-Optimize, Autoptimize, Breeze, Hummingbird, Comet Cache, SiteGround Optimizer, Nginx Helper, WP Engine, Pantheon); for any other cache, clear it after publishing. Plugins that combine, defer or delay scripts are asked — by marks on its tag that Autoptimize, LiteSpeed Cache, WP Rocket and Cloudflare’s Rocket Loader read — to leave the plugin’s first script where it is: it has to run before every other script of the page.

Does it work with Google Tag Manager and Google Consent Mode?

Yes. Before a visitor answers, the plugin sets the Consent Mode v2 signals to “denied” — the advertising signals follow your marketing category, the analytics signal your analytics category — and updates them with each answer; an event named wmcc_consent is pushed to the data layer as well. You choose how Tag Manager itself is treated: listed under a category, the container waits for that category like any other script; left out of the list, it loads and its tags follow the Consent Mode signals.

Which services does it recognise?

Google Analytics, Google Tag Manager, Google Ads, YouTube, Google Maps, Meta Pixel and Facebook embeds, and the cookies WordPress and WooCommerce set themselves. A recognised service gets its category suggested, and its cookies listed with what they are for. Anything else the scan finds is shown as not known: you choose its category. A script is held back by a rule that looks for a piece of its address, so any script can be listed.

How does the cookie scan work?

When you press “Scan the site”, the screen opens a sample of your pages — the front page, the newest entry of each kind of content, a shop’s own pages, and addresses you add — in your own browser, served the way a visitor who is not logged in gets them. The server notes the cookies it sets and what stands in each page’s markup; a small script in the page notes the cookies scripts set and everything the page loads. Nothing is sent to an outside service, and nothing is added to your cookie list until you choose it. A scan cannot see what loads only after a click or a purchase, what an ad blocker in your browser stops, or the cookies another site keeps on its own domain; those are listed where the service is known. While it runs, your pages’ own trackers run once in your browser, as they would for a visitor who allowed everything — in a browser that is logged in to your site, and including trackers your site leaves out for administrators.

Can everything be held back?

Scripts and embedded frames always can, and images and loading hints when they stand in the page’s markup. What a script that is already running sends by itself or writes into the page as markup, and style sheets and fonts loaded from another site, cannot be held back by a rule: hold back the script that does it, or serve the file from your own site. After you publish, the scan lists whatever still reaches another site before a visitor answers, and says for each whether a rule can hold it.

How can visitors change their answer?

By default a small round button stays in a corner of every page and opens the cookie settings window. Instead of it, or as well, any link to #cookie-settings opens the window — in a menu, a footer or a page — and so does the [wmcc_settings] shortcode. Withdrawing consent deletes the listed cookies your site set and loads the page again without the scripts. Cookies another site keeps on its own domain, and cookies no script can read, cannot be deleted from a page.

What does a consent record hold about a visitor?

As little as it takes to be a record: a random consent ID (kept in the visitor’s own consent cookie, and shown to them in the cookie settings window), the time, the answer and the categories it allowed, the version and language of the banner, the address of the page without its query string, the browser’s name and major version with the name of the operating system, and the network part of the IP address — the last part of the address is never stored. A record is not linked to a user account, and is deleted after 90 days. Settings Privacy Policy guide has a paragraph you can use in your privacy policy.

How are page views counted?

A page reports that it was shown, with one small request to your own site that carries no cookie and nothing about the visitor; the site adds one to that day’s number. A busy site (more than 2,500 page views a day) counts a sample instead — one page view in so many, each counted for that many — so the counting stays light however much traffic there is. A developer can switch page view counting off with the wmcc_count_pageviews filter.

Can I restyle the banner with my theme’s CSS?

Yes, on purpose only. The banner lives in a shadow root under <div id="wmcc-root">, so your theme’s styles do not change it by accident. What your style sheet can set are these custom properties on #wmcc-root — --wmcc-bg, --wmcc-text, --wmcc-muted, --wmcc-line, --wmcc-font-size, --wmcc-radius, --wmcc-button-radius — and rules for its named parts, written #wmcc-root::part(name): banner, text, title, body, policy, actions, button (with accept, reject, settings, save, and in-banner or in-window), close, credit, credit-icon, overlay, window, window-head, window-title, window-body, window-foot, intro, category, category-name, switch, consent-id, reopen, reopen-icon. For example: #wmcc-root::part(accept) { background: #0a7d3c; color: #fff; }. Keeping the text readable on your colors is then yours to check, and a font or picture such a rule loads from another site reaches that site before the visitor answers.

In which languages is the banner?

In any you add: each language has its own words, and the banner follows the language of the page. Words are ready in English and Thai; for another language you start from the English ones and write your own. The plugin’s own screen is in English, with translations served by WordPress.org as they are completed.

Does it work on a multisite network?

Yes. Each site of a network has its own banner, cookie list and consent log, managed by that site’s administrators.

Does the plugin connect to an outside service or collect data?

No. The banner, its script and the cookie list are served by your own site, answers and page views are recorded in your own database, and the plugin makes no request to any other server. It adds no credit or link to your pages unless you switch on the “Powered by WorkMore Cookie Crumb” line yourself (Banner design Text; off by default). On its screen, the only link to our website is on the “Upgrade to Pro” tab, and it opens only when you click it. The section “External services” below says what the names of other companies’ services in the plugin are for.

What happens when I deactivate or uninstall the plugin?

Deactivating takes the banner off and stops holding scripts back at once: nothing in your content was changed, so there is nothing to undo. It deletes nothing. Uninstalling removes the consent log, the statistics and the settings only if you asked for it under Settings Cookie Crumb Settings, where the switch is off by default — a consent log is a record you may be asked for.

Comentarios

Non hai recensións para este plugin.

Colaboradores e desenvolvedores

“WorkMore Cookie Crumb – Cookie Consent Banner” é un software de código aberto. As seguintes persoas colaboraron con este plugin.

Colaboradores

Rexistro de cambios

1.0.6

  • An optional “Powered by WorkMore Cookie Crumb” line under the banner’s text, with the plugin’s logo, linking to its WordPress.org page. Off by default; switched on under Banner design Text.

1.0.5

  • A widget on the WordPress Dashboard: the consent rate and the answers by kind over the last 28 days, and how much room the consent records take. Only for those who may open the plugin’s screen; “Screen Options” hides it.

1.0.4

  • Banner design: the banner’s position is chosen from small pictures of a page with the banner in its place.
  • Consent log: a “Storage” card says how much room the consent records take in your site’s database.
  • The standard look stands in the middle of a wide screen instead of at its left edge.

1.0.3

  • Consent log: one time range for the charts and the list of records — the last 24 hours, 7 days, 28 days, 3 months, 6 months, or two dates of your choosing.
  • Consent log: the list shows 25, 50 or 100 rows to a page, with First, Previous and Next, and says which rows of how many it is showing.
  • The charts show a step’s numbers under the pointer, and can be read step by step with the arrow keys.
  • Hints are behind a small “i” beside what they are about, instead of in a line under every field.

1.0.2

  • The plugin’s screen has two looks, chosen under Settings Cookie Crumb Settings: “Standard” (new, and what a site starts with) and “Classic” (the screen as it was). The choice changes nothing for visitors.

1.0.1

  • The placeholder of a held-back video or map no longer carries a style sheet of its own; it looks as it did.
  • The readme says, under “External services”, that the plugin connects to none and what the names of other companies’ services in its code are for.

1.0.0

  • First release: consent banner and cookie settings window in any number of languages; scripts, frames and pixels held back until the visitor allows their category; Google Consent Mode v2 and WP Consent API; cookie scan and setup wizard; consent log with search by consent ID and CSV export; dashboard with page views by month.