{"id":250580,"date":"2025-10-06T21:38:27","date_gmt":"2025-10-06T21:38:27","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/nexaguard-cmp\/"},"modified":"2026-04-02T22:00:07","modified_gmt":"2026-04-02T22:00:07","slug":"nexaguard-cmp","status":"publish","type":"plugin","link":"https:\/\/test.wordpress.org\/plugins\/nexaguard-cmp\/","author":23337744,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"0.2.4","stable_tag":"0.2.4","tested":"6.8.5","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"NexaGuard CMP","header_author":"NexaGuard Inc.","header_description":"Official NexaGuard Consent Management Platform plugin. Injects CMP script, configures Consent Mode v2, and offers admin controls.","assets_banners_color":"","last_updated":"2026-04-02 22:00:07","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/nexaguard.com","header_plugin_uri":"","header_author_uri":"https:\/\/nexaguard.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":349,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.2.0":{"tag":"0.2.0","author":"nexaguard","date":"2025-10-10 21:24:50"},"0.2.1":{"tag":"0.2.1","author":"nexaguard","date":"2026-02-21 03:25:16"},"0.2.2":{"tag":"0.2.2","author":"nexaguard","date":"2026-02-21 04:09:35"},"0.2.3":{"tag":"0.2.3","author":"nexaguard","date":"2026-02-21 04:13:48"},"0.2.4":{"tag":"0.2.4","author":"nexaguard","date":"2026-04-02 22:00:07"},"1.0.0":{"tag":"1.0.0","author":"nexaguard","date":"2025-10-06 21:39:37"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3373987,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3373987,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":[],"assets_blueprints":{},"all_blocks":[],"tagged_versions":["0.2.0","0.2.1","0.2.2","0.2.3","0.2.4","1.0.0"],"block_files":[],"assets_screenshots":[],"screenshots":{"1":"NexaGuard CMP admin screen.","2":"Example banner\/preferences on the front-end."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[14361,20011,389,131785,396],"plugin_category":[54],"plugin_contributors":[248848],"plugin_business_model":[],"class_list":["post-250580","plugin","type-plugin","status-publish","hentry","plugin_tags-compliance","plugin_tags-consent","plugin_tags-cookies","plugin_tags-gdpr","plugin_tags-privacy","plugin_category-security-and-spam-protection","plugin_contributors-nexaguard","plugin_committers-nexaguard"],"banners":[],"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/nexaguard-cmp\/assets\/icon-128x128.png?rev=3373987","icon_2x":"https:\/\/ps.w.org\/nexaguard-cmp\/assets\/icon-256x256.png?rev=3373987","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>NexaGuard CMP makes it easy to integrate the NexaGuard Consent Management Platform into WordPress.<\/p>\n\n<p><strong>Highlights<\/strong>\n- Auto-injects the official NexaGuard loader via the WordPress script pipeline.\n- One-click <strong>Reset Consent<\/strong> (clears cookies\/storage and hard-reloads).\n- <strong>Debug view<\/strong> to force banner display and verify event flow.\n- Google <strong>Consent Mode v2<\/strong> stub included (optional).\n- Shortcode <code>[nexaguard_preferences]<\/code> to open the preferences modal.\n- Admin dashboard status panel and debug shortcuts.\n- Clean uninstall \u2014 removes plugin settings.<\/p>\n\n<p><strong>External Services<\/strong>\nThis plugin loads assets from:\n- <code>https:\/\/cmp.nexaguard.com<\/code> (loader\/assets)\n- <code>https:\/\/api.nexaguard.io<\/code> (configuration\/API)<\/p>\n\n<p>NexaGuard may set cookies such as <code>nexaguard_cmp_consent<\/code> to store user choices.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install the plugin and activate it.<\/li>\n<li>Go to <strong>NexaGuard CMP<\/strong> (left menu).<\/li>\n<li>Enter your <strong>App ID (settings-id)<\/strong> from your NexaGuard dashboard.<\/li>\n<li>(Optional) Toggle <strong>Google Consent Mode v2<\/strong>.<\/li>\n<li>Open your site \u2014 the consent banner should appear for new visitors.<\/li>\n<\/ol>\n\n<p>Use <code>[nexaguard_preferences]<\/code> to place a \u201cPrivacy settings\u201d link anywhere.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"i%20don%E2%80%99t%20see%20the%20banner\"><h3>I don\u2019t see the banner<\/h3><\/dt>\n<dd><p>Check page\/caching and CDN. Use <strong>Reset consent<\/strong> and the <strong>Debug<\/strong> link. Ensure no other CMP is injecting.<\/p><\/dd>\n<dt id=\"does%20this%20store%20personal%20data%20in%20wordpress%3F\"><h3>Does this store personal data in WordPress?<\/h3><\/dt>\n<dd><p>No. The plugin stores only configuration options (App ID, toggles). User choices are stored client-side (cookies\/storage) by the CMP.<\/p><\/dd>\n<dt id=\"multisite%3F\"><h3>Multisite?<\/h3><\/dt>\n<dd><p>Yes, activate per-site and set each site\u2019s App ID.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>0.2.4<\/h4>\n\n<ul>\n<li>Maintenance - release and audit hardening updates with no functional behavior change to CMP runtime injection.<\/li>\n<\/ul>\n\n<h4>0.2.3<\/h4>\n\n<ul>\n<li>Fix - WP Consent bridge debug logs now enable when either plugin Debug Mode is ON or <code>?nxg_debug=1<\/code> is present.<\/li>\n<\/ul>\n\n<h4>0.2.2<\/h4>\n\n<ul>\n<li>Fix - WP Consent bridge logs now print only when both plugin debug is enabled and <code>?nxg_debug=1<\/code> is present.<\/li>\n<\/ul>\n\n<h4>0.2.1<\/h4>\n\n<ul>\n<li>Fix \u2014 Always-on WP Consent API bridge listener with safe defaults.<\/li>\n<li>Fix \u2014 Ensures bridge enqueues after official WP Consent API script.<\/li>\n<li>New \u2014 Registers \u201cmarketing\u201d, \u201cstatistics\u201d, \u201cstatistics-anonymous\u201d categories via <code>wp_register_consent_category<\/code>.<\/li>\n<li>Fix \u2014 Aligns WP Consent bridge categories and mapping with Core CMP Engine contract.<\/li>\n<li>Fix \u2014 Uses <code>developer_id.&lt;id&gt;<\/code> format and guards duplicate Consent Mode default pushes via <code>__nxgCMDefaultSet<\/code>.<\/li>\n<li>Fix \u2014 Corrects loader dependency handle for deterministic script ordering.<\/li>\n<li>UX \u2014 Removes WP admin certification warning notice for cleaner plugin experience.<\/li>\n<li>Improvement \u2014 Verified x.3.b compliance for Google CMP Gold Tier.<\/li>\n<\/ul>\n\n<h4>0.2.0<\/h4>\n\n<ul>\n<li>New: WordPress Consent API integration (required for Google CMP Gold x.3.b). NexaGuard consent states now sync to WP plugins via <code>wp_set_consent()\/wp_has_consent()<\/code>.<\/li>\n<li>Improvement: Bridge script auto-detects API presence and maps GCM v2 keys: analytics_storage \u2192 statistics, ad_storage\/ad_user_data\/ad_personalization \u2192 marketing.<\/li>\n<li>Dev: Filter <code>nxg_wp_consent_mapping<\/code> allows site-specific category remaps.<\/li>\n<\/ul>\n\n<h4>0.1.1<\/h4>\n\n<ul>\n<li>Nonce alignment, enqueue\/escaping polish.<\/li>\n<\/ul>\n\n<h4>0.1.0<\/h4>\n\n<ul>\n<li>First public release.<\/li>\n<\/ul>","raw_excerpt":"Consent Management Platform for WordPress. Inject NexaGuard loader, enable Google Consent Mode v2, and manage\/reset consent via a simple admin UI.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/250580","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=250580"}],"author":[{"embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/nexaguard"}],"wp:attachment":[{"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=250580"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=250580"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=250580"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=250580"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=250580"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/test.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=250580"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}