CMPly – Cookie Consent Banner & GDPR Cookie Scanner

Descriere

CMPly is a cookie consent and consent management plugin for WordPress that helps you manage cookies, trackers, and visitor consent.

Automatically scan your website for cookies and tracking technologies, display a customizable cookie consent banner, block non-essential scripts before consent, and manage consent from your CMPly dashboard.

Key Features

  • Cookie Consent Banner – Display a customizable consent banner and preference center on your WordPress site.
  • Automatic Cookie Scanner – Scan your website to detect cookies, trackers, and third-party services.
  • Prior-Consent Blocking – Block configured non-essential scripts before the visitor gives consent.
  • Google Consent Mode v2 – Configure global and regional consent defaults for Google services directly from WordPress.
  • Cookie Classification – Organize detected cookies into consent categories.
  • Consent Records – Keep records of visitor consent and consent changes.
  • Multi-language Support – Automatically detect the visitor’s language or configure it manually.
  • Simple WordPress Integration – Connect your WordPress site to CMPly in just a few clicks.

This plugin requires an active CMPly.app site configuration. CMPly provides the consent banner, consent storage, cookie/provider metadata, and related consent-management functionality.

How It Works

  1. Install and activate the CMPly plugin.
  2. Open Settings > CMPly and connect your website to CMPly.
  3. CMPly scans your website for cookies and tracking technologies.
  4. Review detected cookies and configure your consent banner.
  5. Publish your configuration.

CMPly automatically loads the required consent management configuration on your WordPress website.

Automatic Cookie Scanner

CMPly scans your website to identify cookies, trackers, and third-party services.

Detected technologies can be reviewed and classified from your CMPly dashboard, helping you keep your cookie configuration up to date as your website changes.

Google Consent Mode v2

CMPly supports Google Consent Mode v2 and allows you to configure consent defaults for Google services.

You can manage global and regional consent settings directly from the CMPly settings inside WordPress.

Technical Integration

CMPly loads its SDK early in the page <head> so that configured third-party scripts can be controlled before they execute.

The SDK is intentionally loaded without defer or async, because delayed execution could allow tracking scripts to run before the visitor’s consent preferences are known.

Advanced options include:

  • Automatic or manual SDK embedding.
  • Site ID configuration.
  • SDK cache-busting version.
  • Language override.
  • URL exclusions with wildcard support.

External services

This plugin connects to CMPly.app, a third-party consent-management service, when CMPly is enabled and a Site ID is configured.

When an administrator chooses Connect or Verify, WordPress sends the site URL, connection identifiers, plugin version, and a short-lived connection code to CMPly. CMPly returns the Site ID and API key server-to-server. When an administrator opens, refreshes, or saves the Google Consent Mode screen, WordPress sends the site URL, Site ID, connection ID, API key, and GCM settings to CMPly. GCM responses are cached in WordPress for five minutes. The API key is stored as a non-autoloaded WordPress option, is never printed in public HTML, and is deleted on disconnect or uninstall.

The administrator-side connection and GCM requests use CMPly endpoints under https://cmply.app/api/integrations/wordpress/, including /sites/{siteId}/gcm. These requests are used only to authenticate the WordPress connection and read or save the connected site’s settings.

The plugin loads the CMPly JavaScript SDK from:

  • https://cmply.app/sdk/init.js

The SDK may request these CMPly API endpoints in the visitor’s browser:

  • /api/sites/{siteId} to load banner settings.
  • /api/sites/{siteId}/cookies-list to load cookie details.
  • /api/sites/{siteId}/providers to load detected provider rules.
  • /api/sites/{siteId}/view to record a banner/site view.
  • /api/consent to record a consent choice.

Data sent to CMPly may include the configured Site ID, consent categories selected by the visitor, consent metadata generated by the SDK, and standard request metadata such as IP address, user agent, referrer, and timestamp. CMPly uses this data to provide cookie consent functionality, consent records, analytics, and script-blocking configuration.

Service links:

  • CMPly: https://cmply.app
  • Terms of Service: https://cmply.app/terms
  • Privacy Policy: https://cmply.app/privacy

Capturi ecran

Instalare

  1. Install CMPly from the WordPress plugin directory.
  2. Activate the plugin.
  3. Go to Settings > CMPly.
  4. Click Connect to CMPly.
  5. Follow the setup process to scan your website and configure your consent banner.
  6. Clear your website cache if you use a caching plugin.

That’s it — CMPly will automatically load the consent configuration on your website.

For an advanced manual setup, you can paste a Site ID from the CMPly dashboard instead of connecting an account.

Întrebări frecvente

Do I need a CMPly account?

Yes. The WordPress plugin connects your website to the CMPly consent management platform. An advanced manual Site ID setup is also available.

Does CMPly scan my website for cookies?

Yes. CMPly can scan your website for cookies, trackers, and third-party services so they can be reviewed and classified.

Does CMPly block cookies before consent?

CMPly can block configured non-essential scripts until the visitor provides the required consent.

Does CMPly support Google Consent Mode v2?

Yes. Global and regional Google Consent Mode v2 settings can be configured for your connected website directly from WordPress.

Can I customize the cookie banner?

Yes. Banner appearance, content, and consent settings are managed from your CMPly account.

Does CMPly support multiple languages?

Yes. CMPly can automatically use the visitor’s browser language, and a specific language can also be configured.

Why is the CMPly script not loaded with defer or async?

CMPly needs to execute early during page loading so it can prevent configured third-party scripts from running before consent. Loading it with defer or async could make prior-consent blocking less reliable.

What if I already added the CMPly script manually?

Turn off Auto-inject SDK in Settings > CMPly and keep the manual script near the top of the document head. Keep only one CMPly SDK script on the page.

How does the Connect button work?

The button opens the CMPly web app with your WordPress site URL, return URL, and a signed WordPress callback-state token that expires after 30 minutes. CMPly separately returns a ten-minute, single-use authorization code. WordPress exchanges that code with CMPly over HTTPS and stores the resulting credentials server-side.

Can I disable CMPly on specific pages?

Yes. Add one path per line in Exclude Paths, for example:

/checkout/*

Does this plugin set cookies by itself?

The WordPress plugin stores only its admin settings in the WordPress database. The public consent cookie is created by the CMPly SDK in the visitor’s browser.

Recenzii

Nu există nicio verificare pentru acest modul.

Contributori și dezvoltatori

„CMPly – Cookie Consent Banner & GDPR Cookie Scanner” este un software open-source. La acest modul au contribuit următoarele persoane.

Contributori

Istoric modificări

1.0.24

  • Refreshed the cookie banner screenshot using the official CMPly website for consistent branding.

1.0.23

  • Added six real product screenshots for the WordPress.org listing.
  • Documented the cookie banner, WordPress connection status, consent-aware scan results, cookie classification, banner customization, and Google Consent Mode v2.

1.0.22

  • Reworked the WordPress.org listing around the cookie consent banner, automatic cookie scanner, prior-consent blocking, and Google Consent Mode v2.
  • Added clearer setup steps, feature explanations, technical integration details, and frequently asked questions.
  • Updated the plugin display name and description without changing the cmply slug or connection behavior.

1.0.21

  • Fixed WordPress account connections when the web callback returns without the nested WordPress nonce.
  • Kept the signed, administrator-bound callback state mandatory and continued validating a WordPress nonce whenever one is returned.

1.0.20

  • Added authenticated editing of Google Consent Mode v2 and regional consent defaults from WordPress.
  • Added validation, five-minute response caching, manual refresh, and actionable connection errors for GCM settings.

1.0.19

  • Synchronized the GitHub release source with the reviewed WordPress.org package.
  • Added automated, version-validated deployment to WordPress.org.

1.0.18

  • Clarified the connection flow by distinguishing the signed WordPress callback state from the single-use CMPly authorization code.
  • Reworded upgrade messaging to avoid implying guaranteed protection from legal risk.

1.0.17

  • Hide Reconnect while the connection is healthy and show it only after a verification failure.

1.0.16

  • Automatically refresh plan and pageview usage when CMPly settings open and the saved snapshot is older than 15 minutes.
  • Keep Verify connection as an immediate manual refresh and diagnostic action.

1.0.15

  • Show fractional pageview usage below ten percent instead of rounding it to zero.

1.0.14

  • Preserve freshly synchronized pageview usage, limits, and connection ID through WordPress option sanitization.
  • Hide dashboard upgrade promotions for paid plans.

1.0.13

  • Allow Verify to repair a missing connection ID using the saved API key, Site ID, and domain.
  • Store the connection ID separately from editable plugin settings.

1.0.12

  • Hide the header upgrade button for paid plans.
  • Synchronize pageviews from the same billing-period statistics used by the CMPly dashboard.

1.0.11

  • Hide the dashboard connection prompt after a CMPly account has been connected.
  • Use the saved connection ID as the persistent UI connection state.

1.0.10

  • Show the safe CMPly API error and HTTP status when credential exchange fails.

1.0.9

  • Pass callback state as a dedicated CMPly parameter so nested URL encoding cannot remove it.

1.0.8

  • Added precise callback-state diagnostics for missing, malformed, expired, wrong-user, and invalid-signature failures.

1.0.7

  • Use a stateless, administrator-bound HMAC callback state that survives navigation, caching, and multiple tabs.

1.0.6

  • Store the one-time connection state in administrator metadata so it works independently of transient cache backends.

1.0.5

  • Replaced the external callback nonce with a one-time administrator-bound state token.

1.0.4

  • Fixed nonce encoding in the nested WordPress connection callback URL.
  • Replaced the WordPress expired-link screen with an actionable plugin error message.

1.0.3

  • Added visible connection success and error messages.
  • Distinguished manual Site ID configuration from an authenticated CMPly account connection.

1.0.2

  • Fixed duplicate upgrade button icon during cached asset transitions.

1.0.1

  • Fixed admin icon rendering and enabled interactive FAQ answers.
  • Added live plan and pageview usage synchronization from CMPly.

1.0.0

  • Initial release.
  • Added one-time connection exchange and server-side connection verification.
  • Added live plan and pageview usage synchronization from CMPly.