[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fC-PePojWKholg77AsTykU6R3XRw7GrOineLGjkVKIgU":3},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":13,"num_ratings":14,"last_updated":15,"tested_up_to":16,"requires_at_least":16,"requires_php":17,"tags":18,"homepage":24,"download_link":25,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29,"vulnerabilities":30,"developer":31,"crawl_stats":28,"alternatives":38,"analysis":143,"fingerprints":229},"cookie-confirm","Cookie Confirm","0.4","Andy Charrington","https:\u002F\u002Fprofiles.wordpress.org\u002Fjealousdesigns\u002F","\u003Cp>By providing an unintrusive notification in a customisable location Cookie Confirm allows you to give your users the choice to accept cookies on your WordPress site.\u003C\u002Fp>\n\u003Cp>When a visitor browses to a website with the Cookie Confirm plugin installed for the first time, they are shown a banner asking for their consent to cookies. The banner explains which cookies the website intends to set, and gives the visitor the option to consent or to deny each type of cookie. As well as being able to consent to cookies for the website they visited, the banner allows the visitor to consent to cookies for all websites which use the Cookie Confirm plugin.\u003C\u002Fp>\n\u003Cp>If the visitor chooses to set preferences for all sites, we set third party cookies on our domain (cookieconsent.silktide.com) to remembers their choices. This cookies are completely anonymous, non-trackable, and are only used to remember the visitors preferences.\u003C\u002Fp>\n\u003Cp>Each time a visitor browses to a website with the Cookie Confirm plugin installed, the plugin checks to see if they have set preferences for all sites. If so, it doesn’t need to show the banner and the website already knows which sorts of cookies it is allowed to set.\u003C\u002Fp>\n\u003Cp>Current features include-\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Customise position and style of notification\u003C\u002Fli>\n\u003Cli>Specify which type of cookie your site uses and customise the descriptions of these\u003C\u002Fli>\n\u003Cli>Choose from Explicit or Implicit consent\u003C\u002Fli>\n\u003Cli>Allow users to save their choice for all websites using the Cookie Consent software\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Coming soon-\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Ability to customise all text strings\u003C\u002Fli>\n\u003Cli>Add your own cookie definitions\u003C\u002Fli>\n\u003Cli>Add proper support for SSL\u003C\u002Fli>\n\u003C\u002Ful>\n","Cookie Confirm allows you to easily insert a customisable notification for your users to choose and save their cookie preferences.",100,20571,70,2,"2012-11-12T17:45:00.000Z","3.3.2","",[19,20,21,22,23],"compliance","confirm","consent","cookie","eu","http:\u002F\u002Ffishcantwhistle.com","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcookie-confirm.0.4.zip",85,0,null,"2026-03-15T15:16:48.613Z",[],{"slug":32,"display_name":7,"profile_url":8,"plugin_count":33,"total_installs":34,"avg_security_score":26,"avg_patch_time_days":35,"trust_score":36,"computed_at":37},"jealousdesigns",5,900,30,84,"2026-04-04T23:27:43.739Z",[39,62,82,102,120],{"slug":40,"name":41,"version":42,"author":43,"author_profile":44,"description":45,"short_description":46,"active_installs":47,"downloaded":48,"rating":49,"num_ratings":50,"last_updated":51,"tested_up_to":52,"requires_at_least":53,"requires_php":17,"tags":54,"homepage":60,"download_link":61,"security_score":26,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"cookiepro","CookiePro | Simplify Compliance with GDPR & EU Cookie Laws","1.0.4","CookiePro","https:\u002F\u002Fprofiles.wordpress.org\u002Fcookiepro\u002F","\u003Cp>CookiePro is the most mature and trusted cookie consent tool that is purpose-built for compliance with GDPR, ePrivacy and IAB framework. Now including IAB TCF v2.0!\u003C\u002Fp>\n\u003Ch3>OVERVIEW\u003C\u002Fh3>\n\u003Cp>Use the CookiePro plugin to insert an automatically generated cookie banner & preference center script to your website. Simply copy and paste the main script tag provided in your CookiePro account into the plugin script box – no need to edit your website code.\u003C\u002Fp>\n\u003Ch3>GETTING STARTED\u003C\u002Fh3>\n\u003Cp>Sign up for a CookiePro account to retrieve the cookie banner script. We offer different editions, so you can scale your cookie consent needs with your business.\u003C\u002Fp>\n\u003Cp>Visit \u003Ca href=\"https:\u002F\u002Fwww.cookiepro.com\u002Fpricing\u002F?referral=WORDPRESS\" rel=\"nofollow ugc\">CookiePro.com\u003C\u002Fa> to start creating an account with complete features and access to CCPA, GDPR, and IAB TCF templates. In need of only an IAB TCF v2.0 script? Visit \u003Ca href=\"http:\u002F\u002Fcomply.cookiepro.com\u002F\" rel=\"nofollow ugc\">Comply.CookiePro.com\u003C\u002Fa> to create a FREE script without having to create an account.\u003C\u002Fp>\n\u003Ch3>HOW IT WORKS\u003C\u002Fh3>\n\u003Col>\n\u003Cli>Scan your website and review your cookies categories\u003C\u002Fli>\n\u003Cli>Style and configure your banner and preference center\u003C\u002Fli>\n\u003Cli>Block cookies using a tag manager and\u002For JS Rewrite\u003C\u002Fli>\n\u003Cli>Copy and paste CookiePro script into WordPress plugin\u003C\u002Fli>\n\u003Cli>Save the configuration to publish the cookie banner\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch3>FEATURE HIGHLIGHTS\u003C\u002Fh3>\n\u003Cp>CookiePro is the most mature and trusted cookie consent tool that is purpose-built for compliance with GDPR, ePrivacy and IAB framework.\u003Cbr \u002F>\n* Automatically scan and categorize cookies on your website\u003Cbr \u002F>\n* Customize your cookie banner and preview before publishing\u003Cbr \u002F>\n* Configure consent models by geolocation (Show only in EU)\u003Cbr \u002F>\n* Respect prior consent and Do Not Track browser settings\u003Cbr \u002F>\n* Granular preferences center and ability to withdraw consent\u003Cbr \u002F>\n* Complete records of consent to demonstrate compliance\u003Cbr \u002F>\n* Generate and maintain an always up-to-date cookie policy\u003Cbr \u002F>\n* Audit website for changes through scheduled website scans\u003Cbr \u002F>\n* View previously published versions saved in a script archive\u003Cbr \u002F>\n* Leverage built-in templates with multilingual support (50+)\u003C\u002Fp>\n\u003Ch3>WHAT’S NEXT\u003C\u002Fh3>\n\u003Cp>Get up and running quickly with detailed step-by-step instructions and best practices, available in the \u003Ca href=\"https:\u002F\u002Fcommunity.cookiepro.com\u002F\" rel=\"nofollow ugc\">CookiePro Community\u003C\u002Fa>. You will need a CookiePro account to access the community.\u003C\u002Fp>\n\u003Ch3>HOW TO INTEGRATE COOKIEPRO WITH WORDPRESS\u003C\u002Fh3>\n\u003Cp>\u003Cscript src=\"https:\u002F\u002Ffast.wistia.com\u002Fassets\u002Fexternal\u002FE-v1.js\" async>\u003C\u002Fscript>\u003C\u002Fp>\n\u003Cdiv class=\"wistia_responsive_padding\" style=\"padding:56.25% 0 0 0;position:relative;\">\n\u003Cdiv class=\"wistia_responsive_wrapper\" style=\"height:100%;left:0;position:absolute;top:0;width:100%;\">\n\u003Cdiv class=\"wistia_embed wistia_async_jwblrqx750 dnt=1 videoFoam=true\" style=\"height:100%;position:relative;width:100%\">\n\u003Cdiv class=\"wistia_swatch\" style=\"height:100%;left:0;opacity:0;overflow:hidden;position:absolute;top:0;transition:opacity 200ms;width:100%;\">\u003Cimg decoding=\"async\" src=\"https:\u002F\u002Ffast.wistia.com\u002Fembed\u002Fmedias\u002Fjwblrqx750\u002Fswatch\" style=\"filter:blur(5px);height:100%;object-fit:contain;width:100%;\" alt=\"\" aria-hidden=\"true\" onload=\"this.parentNode.style.opacity=1;\" \u002F>\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003Ch3>HOW TO SIGN UP FOR A COOKIEPRO ACCOUNT\u003C\u002Fh3>\n\u003Cp>\u003Cscript src=\"https:\u002F\u002Ffast.wistia.com\u002Fassets\u002Fexternal\u002FE-v1.js\" async>\u003C\u002Fscript>\u003C\u002Fp>\n\u003Cdiv class=\"wistia_responsive_padding\" style=\"padding:56.25% 0 0 0;position:relative;\">\n\u003Cdiv class=\"wistia_responsive_wrapper\" style=\"height:100%;left:0;position:absolute;top:0;width:100%;\">\n\u003Cdiv class=\"wistia_embed wistia_async_lphdhte3n4 dnt=1 videoFoam=true\" style=\"height:100%;position:relative;width:100%\">\n\u003Cdiv class=\"wistia_swatch\" style=\"height:100%;left:0;opacity:0;overflow:hidden;position:absolute;top:0;transition:opacity 200ms;width:100%;\">\u003Cimg decoding=\"async\" src=\"https:\u002F\u002Ffast.wistia.com\u002Fembed\u002Fmedias\u002Flphdhte3n4\u002Fswatch\" style=\"filter:blur(5px);height:100%;object-fit:contain;width:100%;\" alt=\"\" aria-hidden=\"true\" onload=\"this.parentNode.style.opacity=1;\" \u002F>\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003C\u002Fdiv>\n\u003Ch3>Get HELP\u003C\u002Fh3>\n\u003Cp>Email us at \u003Ca href=\"mailto:support@cookiepro.com\" rel=\"nofollow ugc\">support@cookiepro.com\u003C\u002Fa>\u003Cbr \u002F>\nBrowse the \u003Ca href=\"https:\u002F\u002Fcommunity.cookiepro.com\" rel=\"nofollow ugc\">CookiePro Community \u003C\u002Fa>for knowledgebase articles, product updates and privacy news.\u003C\u002Fp>\n\u003Ch3>DISCLAIMER\u003C\u002Fh3>\n\u003Cp>This plugin allows you to publish CookiePro’s cookie banner and preference center on your WordPress website. Use of this plugin does not, by itself, ensure compliance with legal requirements related to cookies.\u003C\u002Fp>\n\u003Ch3>ABOUT\u003C\u002Fh3>\n\u003Cp>This plugin was created by the \u003Ca href=\"https:\u002F\u002Fprofiles.wordpress.org\u002Fcookiepro\u002F\" rel=\"nofollow ugc\">CookiePro\u003C\u002Fa> team. CookiePro provides purpose-built tools to help website owners and agencies simplify compliance with global privacy laws including GDPR, CCPA, and ePrivacy and is powered by the OneTrust platform. \u003Ca href=\"https:\u002F\u002Fwww.onetrust.com\u002Fresources\u002Fonetrust-named-a-leader-forrester-new-wave-2018\u002F\" rel=\"nofollow ugc\">OneTrust\u003C\u002Fa> was named a leader in the Forrester New Wave™: GDPR and Privacy Management Software, Q4 2018.\u003C\u002Fp>\n","CookiePro is the most mature and trusted cookie consent tool that is purpose-built for compliance with GDPR, ePrivacy and IAB framework.",2000,43980,60,9,"2021-10-12T12:28:00.000Z","5.8.13","3.6",[55,56,57,58,59],"cookie-compliance","cookie-consent","cookie-law","eu-privacy-directive","gdpr","http:\u002F\u002Fwww.onetrust.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcookiepro.zip",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":70,"downloaded":71,"rating":11,"num_ratings":14,"last_updated":72,"tested_up_to":73,"requires_at_least":74,"requires_php":75,"tags":76,"homepage":80,"download_link":81,"security_score":11,"vuln_count":27,"unpatched_count":27,"last_vuln_date":28,"fetched_at":29},"wp-consent-api","WP Consent API","2.0.1","Rogier Lankhorst","https:\u002F\u002Fprofiles.wordpress.org\u002Frogierlankhorst\u002F","\u003Cp>WP Consent API is a plugin that standardizes the communication of accepted consent categories between plugins. It requires a cookie banner plugin and, at least, one other plugin that supports the WP Consent API.\u003C\u002Fp>\n\u003Cp>With this plugin, all supporting plugins can use the same set of methods to read and register the current consent category, allowing consent management plugins and other plugins to work together, improving compliance with privacy laws.\u003C\u002Fp>\n\u003Cp>WARNING: the plugin itself will not handle consent. It will show you how many plugins you have without Consent API support and will improve compliance on your site by ensuring smooth communication between cookie banner plugins and plugins that set cookies or track user data.\u003C\u002Fp>\n\u003Ch4>What problem does this plugin solve?\u003C\u002Fh4>\n\u003Cp>Currently, it is possible for a consent management plugin to block third-party services like Facebook, Google Maps, Twitter, etc. But if a WordPress plugin places a PHP cookie, a consent management plugin cannot prevent this.\u003C\u002Fp>\n\u003Cp>Secondly, some plugins integrate the tracking code on the clientside in javascript files that, when blocked, break the site.\u003C\u002Fp>\n\u003Cp>Or, if such a plugin’s javascript is minified, causing the URL to be unrecognizable and won’t get detected by an automatic blocking script.\u003C\u002Fp>\n\u003Cp>Lastly, the blocking approach requires a list of all types of URL’s that tracks data. A generic API where plugins adhere to can greatly\u003Cbr \u002F>\nfacilitate a webmaster in getting a site compliant.\u003C\u002Fp>\n\u003Ch4>Does usage of this API prevent third-party services from tracking user data?\u003C\u002Fh4>\n\u003Cp>Primary this API is aimed at compliant first-party cookies or tracking by WordPress plugins. If such a plugin triggers, for example, Facebook,\u003Cbr \u002F>\nusage of this API will be of help. If a user embeds a Facebook iframe, a blocking tool is needed that initially disables the iframe and or scripts.\u003C\u002Fp>\n\u003Cp>Third-party scripts have to blocked by blocking functionality in a consent management plugin. To do this in core would be to intrusive, and is also not applicable to all users: only users with visitors from opt-in regions such as the European Union require such a feature. Such a feature also has a risk of breaking things. Additionally, blocking these and showing a nice placeholder requires even more sophisticated code, all of which should in my opinion not be part of WordPress core, for the same reasons.\u003C\u002Fp>\n\u003Ch4>How does it work?\u003C\u002Fh4>\n\u003Cp>There are two indicators that together tell if consent is given for a specific consent category, e.g., “marketing”:\u003Cbr \u002F>\n1) the region based consent_type, which\u003Cbr \u002F>\ncan be opt-in, opt-out, or other possible consent_types;\u003Cbr \u002F>\n2) and the visitor’s choice: not set, allow, or deny.\u003C\u002Fp>\n\u003Cp>The consent_type is a function that wraps a filter, “wp_get_consent_type”. If there’s no consent management plugin to set it, it will return false. This will cause all consent categories to return true, allowing cookies to be set on all categories.\u003C\u002Fp>\n\u003Cp>If opt-in is set using this filter, a category will only return true if the value of the visitor’s choice is “allow”.\u003C\u002Fp>\n\u003Cp>If the region based consent_type is opt-out, it will return true if the visitor’s choice is not set or is “allow”.\u003C\u002Fp>\n\u003Cp>Clientside, a consent management plugin can dynamically manipulate the consent type and set several cookie categories.\u003C\u002Fp>\n\u003Cp>A plugin can use a hook to listen for changes or check the value of a given category.\u003C\u002Fp>\n\u003Cp>Categories and most other stuff can be extended with a filter.\u003C\u002Fp>\n\u003Ch3>Existing integrations\u003C\u002Fh3>\n\u003Cp>Categorized, and sorted alphabetically\u003C\u002Fp>\n\u003Ch4>Example plugin\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Frlankhorst\u002Fconsent-api-example-plugin\" rel=\"nofollow ugc\">Example plugin\u003C\u002Fa>. The plugin basically consists of a shortcode, with a div that shows a tracking or not tracking message. No actual tracking is done 🙂\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Consent Management Providers\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fsirdata-cmp\u002F\" rel=\"ugc\">Abconsent Sirdata CMP\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fbeautiful-and-responsive-cookie-consent\u002F\" rel=\"ugc\">Beautiful Cookie Consent Banner\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fclickio-consent\u002F\" rel=\"ugc\">Clickio Consent\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcomplianz-gdpr\u002F\" rel=\"ugc\">Complianz GDPR\u002FCCPA\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fconsent.studio\u002F\" rel=\"nofollow ugc\">Consent Studio\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fconsent-manager\u002F\" rel=\"ugc\">consentmanager\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fconzent.net\u002F\" rel=\"nofollow ugc\">Conzent\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcookiebot\u002F\" rel=\"ugc\">Cookiebot\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcookiefirst-gdpr-cookie-consent-banner\u002F\" rel=\"ugc\">CookieFirst\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcookiehub\u002F\" rel=\"ugc\">CookieHub\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcookietractor\u002F\" rel=\"ugc\">CookieTractor\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fcookie-law-info\u002F\" rel=\"ugc\">CookieYes – Cookie Banner for Cookie Consent\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgdpr-cookie-compliance\u002F\" rel=\"ugc\">GDPR Cookie Compliance\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.webtoffee.com\u002Fproduct\u002Fgdpr-cookie-consent\u002F\" rel=\"nofollow ugc\">GDPR Cookie Consent Plugin – CCPA Ready\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgetterms.io\u002Fconsent-manager\u002F\" rel=\"nofollow ugc\">GetTerms\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fiubenda-cookie-law-solution\u002F\" rel=\"ugc\">iubenda | All-in-one Compliance\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fpressidium-cookie-consent\u002F\" rel=\"ugc\">Pressidium Cookie Consent\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Ftrustarc-cookie-consent-manager\u002F\" rel=\"ugc\">TrustArc Cookie Consent Manager\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Consent Requiring Plugins\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fadd-to-any\u002F\" rel=\"ugc\">AddToAny\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwww.appfromlab.com\u002Fproduct\u002Fwoocommerce-utm-tracker-plugin\u002F\" rel=\"nofollow ugc\">AFL UTM Tracker Plugin\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fburst-statistics\u002F\" rel=\"ugc\">Burst Statistics\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fgoogle-site-kit\u002F\" rel=\"ugc\">Google Site Kit\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce-google-adwords-conversion-tracking-tag\u002F\" rel=\"ugc\">Pixel Manager for WooCommerce\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwoocommerce\u002F\" rel=\"ugc\">Woo\u003C\u002Fa>.\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-statistics\u002F\" rel=\"ugc\">WP Statistics\u003C\u002Fa>.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Demo site\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwpconsentapi.org\u002F\" rel=\"nofollow ugc\">wpconsentapi.org\u003C\u002Fa>\u003Cbr \u002F>\nBelow are the plugins used to set up the demo site:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Complianz\u003C\u002Fli>\n\u003Cli>\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Frlankhorst\u002Fconsent-api-example-plugin\" rel=\"nofollow ugc\">The example plugin\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>javascript, consent management plugin\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>\u002F\u002Fset consent type\nwindow.wp_consent_type = 'optin'\n\n\u002F\u002Fdispatch event when consent type is defined. This is useful if the region is detected server side, so the consent type is defined later during the pageload\nlet event = new CustomEvent('wp_consent_type_defined');\ndocument.dispatchEvent( event );\n\n\n\u002F\u002Fconsent management plugin sets cookie when consent category value changes\nwp_set_consent('marketing', 'allow');\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>javascript, tracking plugin\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>\u002F\u002Flisten to consent change event\ndocument.addEventListener(\"wp_listen_for_consent_change\", function (e) {\n  var changedConsentCategory = e.detail;\n  for (var key in changedConsentCategory) {\n    if (changedConsentCategory.hasOwnProperty(key)) {\n      if (key === 'marketing' && changedConsentCategory[key] === 'allow') {\n        console.log(\"just given consent, track user\")\n      }\n    }\n  }\n});\n\n\u002F\u002Fbasic implementation of consent check:\nif (wp_has_consent('marketing')){\n  activateMarketing();\n  console.log(\"set marketing stuff now!\");\n} else {\n  console.log(\"No marketing stuff please!\");\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>PHP\u003C\u002Fh4>\n\u003Cpre>\u003Ccode>\u002F\u002Fdeclare compliance with consent level API\n$plugin = plugin_basename( __FILE__ );\nadd_filter( \"wp_consent_api_registered_{$plugin}\", '__return_true' );\n\n\u002F**\n* Example how a plugin can register cookies with the consent API\n * These cookies can then be shown on the front-end, to the user, with wp_get_cookie_info()\n *\u002F\n\nfunction my_wordpress_register_cookies(){\n    if ( function_exists( 'wp_add_cookie_info' ) ) {\n        wp_add_cookie_info( 'AMP_token', 'AMP', 'marketing', __( 'Session' ), __( 'Store a unique User ID.' ) );\n    }\n}\nadd_action('plugins_loaded', 'my_wordpress_register_cookies');\n\n\nif (wp_has_consent('marketing')){\n\u002F\u002Fdo marketing stuff\n}\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Ch4>Service-level consent\u003C\u002Fh4>\n\u003Cp>In addition to category-based consent, the API supports service-level consent control. This allows consent management plugins to grant or deny consent for specific services (like ‘google-analytics’ or ‘facebook-pixel’) independently from their category. When checking service consent with wp_has_service_consent(), the API first checks if explicit consent exists for that service. If no explicit consent is set, it falls back to the consent status of the service’s category. This enables fine-grained control: a user might accept statistics cookies in general, but explicitly deny a specific analytics service.\u003C\u002Fp>\n\u003Cp>Service consent can be checked and set both server-side (PHP) and client-side (JavaScript):\u003C\u002Fp>\n\u003Cp>PHP:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002F\u002Fcheck if a specific service has consent\nif ( wp_has_service_consent( 'google-analytics' ) ) {\n    \u002F\u002Factivate google analytics\n}\n\n\u002F\u002Fcheck if a service is explicitly denied\nif ( wp_is_service_denied( 'facebook-pixel' ) ) {\n    \u002F\u002Fservice was explicitly denied by user\n}\n\n\u002F\u002Fset service consent\nwp_set_service_consent( 'google-analytics', true ); \u002F\u002Fgrant consent\nwp_set_service_consent( 'facebook-pixel', false ); \u002F\u002Fdeny consent\n\n\u002F\u002Flisten for service consent changes\nadd_action( 'wp_consent_service_changed', function( $service, $consented ) {\n    error_log( \"Service {$service} consent changed to: \" . ( $consented ? 'granted' : 'denied' ) );\n}, 10, 2 );\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>JavaScript:\u003C\u002Fp>\n\u003Cpre>\u003Ccode>\u002F\u002Fcheck service consent\nif ( wp_has_service_consent( 'youtube' ) ) {\n    \u002F\u002Factivate tracking\n}\n\n\u002F\u002Fcheck if explicitly denied\nif ( wp_is_service_denied( 'facebook-pixel' ) ) {\n    \u002F\u002Fservice denied\n}\n\n\u002F\u002Fset service consent\nwp_set_service_consent( 'youtube', true );\n\n\u002F\u002Flisten for service consent changes\ndocument.addEventListener( 'wp_consent_api_status_change_service', function( e ) {\n    console.log( 'Service: ' + e.detail.service + ', consented: ' + e.detail.value );\n});\n\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Any code suggestions? We’re on \u003Ca href=\"https:\u002F\u002Fgithub.com\u002FWordPress\u002Fwp-consent-level-api\" rel=\"nofollow ugc\">GitHub\u003C\u002Fa> as well!\u003C\u002Fp>\n","Simple Consent API to read and register the current consent category.",200000,779186,"2026-03-12T09:27:00.000Z","6.9.4","5.0","7.4",[77,19,21,78,79],"api","cookies","privacy","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fwp-consent-api","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fwp-consent-api.2.0.1.zip",{"slug":83,"name":84,"version":85,"author":86,"author_profile":87,"description":88,"short_description":89,"active_installs":90,"downloaded":91,"rating":92,"num_ratings":93,"last_updated":94,"tested_up_to":95,"requires_at_least":96,"requires_php":17,"tags":97,"homepage":98,"download_link":99,"security_score":100,"vuln_count":14,"unpatched_count":27,"last_vuln_date":101,"fetched_at":29},"cookie-bar","Cookie Bar","2.2","Brontobytes","https:\u002F\u002Fprofiles.wordpress.org\u002Fbrontobytes\u002F","\u003Cp>A simple, lightweight WordPress plugin for displaying a discreet notification bar that is dismissable and the dismissal is saved by cookie. Perfect for implementing the EU cookie law (GDPR)!\u003C\u002Fp>\n\u003Cp>\u003Cstrong>The Cookie Bar plugin creates a small bar at the bottom of the website with a short customizable message about cookies and an accept button.\u003C\u002Fstrong> Once a visitor has accepted the Cookie Bar, it then disappears.\u003C\u002Fp>\n\u003Cp>Feel free to try out the plugin through our installation of \u003Ca href=\"https:\u002F\u002Fwww.brontobytes.com\u002Fblog\u002Fcookie-bar-free-wordpress-plugin\u002F\" rel=\"nofollow ugc\">Cookie Bar\u003C\u002Fa>.\u003C\u002Fp>\n\u003Cp>Troubleshooting: If you or your visitors are using an adblocker that can block cookie bars, the bar may not show up. Whitelist your website in your adblocker’s browser add-on\u002Fextension.\u003C\u002Fp>\n","Cookie Bar allows you to discreetly inform visitors that your website uses cookies.",10000,170028,98,22,"2025-10-29T18:54:00.000Z","6.8.5","3.8",[21,22,83,55,78],"https:\u002F\u002Fwww.brontobytes.com\u002Fblog\u002Fcookie-bar-free-wordpress-plugin\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcookie-bar.2.2.zip",99,"2023-10-24 00:00:00",{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":90,"downloaded":110,"rating":111,"num_ratings":112,"last_updated":113,"tested_up_to":73,"requires_at_least":114,"requires_php":114,"tags":115,"homepage":17,"download_link":117,"security_score":100,"vuln_count":118,"unpatched_count":27,"last_vuln_date":119,"fetched_at":29},"cookie-script-com","Cookie-Script.com","1.4.3","csarturas","https:\u002F\u002Fprofiles.wordpress.org\u002Fcsarturas\u002F","\u003Cp>\u003Cstrong>CookieScript\u003C\u002Fstrong> helps your WordPress site meet privacy requirements like \u003Cstrong>GDPR, CPRA, PIPEDA\u003C\u002Fstrong> and more. It adds a cookie banner to your site—no need to edit files or write any code yourself.\u003C\u002Fp>\n\u003Cp>You can use it right after installing, \u003Cstrong>even without a CookieScript account\u003C\u002Fstrong>. Later on, if you want to adjust how the banner looks or behaves, you can link an account to unlock more options.\u003C\u002Fp>\n\u003Cp>The plugin works with \u003Cstrong>Google Consent Mode v2\u003C\u002Fstrong> and the \u003Cstrong>WP Consent API\u003C\u002Fstrong>, and can \u003Cstrong>block third-party cookies\u003C\u002Fstrong> until a visitor gives permission. It keeps your site compliant without interfering with tools like Google Analytics or ads.\u003C\u002Fp>\n\u003Cp>More details are available at \u003Ca href=\"https:\u002F\u002Fcookie-script.com\u002F\" rel=\"nofollow ugc\">cookie-script.com\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>External services\u003C\u002Fh3>\n\u003Cp>This plugin utilizes Cookie-Script.com services to function.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>1. Cookie-Script.com API\u003C\u002Fstrong>\u003Cbr \u002F>\n*   \u003Cstrong>Service:\u003C\u002Fstrong> Scans your website for cookies and retrieves configuration\u002Fstatus.\u003Cbr \u002F>\n*   \u003Cstrong>Data Sent:\u003C\u002Fstrong> Website URL, Privacy Policy URL, Language preference, and a unique scan identifier.\u003Cbr \u002F>\n*   \u003Cstrong>When:\u003C\u002Fstrong> During manual scan initiation via the plugin settings.\u003Cbr \u002F>\n*   \u003Cstrong>Privacy Policy:\u003C\u002Fstrong> https:\u002F\u002Fcookie-script.com\u002Flegal\u002Fprivacy-policy\u003Cbr \u002F>\n*   \u003Cstrong>Terms of Service:\u003C\u002Fstrong> https:\u002F\u002Fcookie-script.com\u002Flegal\u002Fterms-and-conditions\u003C\u002Fp>\n\u003Cp>\u003Cstrong>2. Cookie-Script.com CDN\u003C\u002Fstrong>\u003Cbr \u002F>\n*   \u003Cstrong>Service:\u003C\u002Fstrong> Delivers the JavaScript file for the cookie banner (for “With Account” mode).\u003Cbr \u002F>\n*   \u003Cstrong>Data Sent:\u003C\u002Fstrong> Standard web request data (IP address, User Agent) when fetching the script.\u003Cbr \u002F>\n*   \u003Cstrong>When:\u003C\u002Fstrong> On every page load where the banner is active.\u003Cbr \u002F>\n*   \u003Cstrong>Privacy Policy:\u003C\u002Fstrong> https:\u002F\u002Fcookie-script.com\u002Flegal\u002Fprivacy-policy\u003C\u002Fp>\n\u003Ch3>\u003C\u002Fh3>\n","Cookie-Script.com WordPress plugin.",109708,62,14,"2026-01-19T09:00:00.000Z","5.6",[19,21,22,116,59],"cookiescript","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fcookie-script-com.1.4.3.zip",1,"2025-06-19 00:00:00",{"slug":121,"name":122,"version":123,"author":124,"author_profile":125,"description":126,"short_description":127,"active_installs":90,"downloaded":128,"rating":129,"num_ratings":130,"last_updated":131,"tested_up_to":73,"requires_at_least":132,"requires_php":133,"tags":134,"homepage":138,"download_link":139,"security_score":140,"vuln_count":141,"unpatched_count":27,"last_vuln_date":142,"fetched_at":29},"gdpr-cookie-consent","Cookie Banner for GDPR \u002F CCPA – WPLP Cookie Consent","4.2.3","WP Legal Pages","https:\u002F\u002Fprofiles.wordpress.org\u002Fwplegalpages\u002F","\u003Cp>\u003Ca href=\"https:\u002F\u002Fwplegalpages.com\u002F?utm_source=wordpress.org&utm_medium=wpcookieconsentplugin&utm_campaign=readme\" rel=\"nofollow ugc\">WPLP Cookie Consent\u003C\u002Fa> helps WordPress website owners display cookie consent banners, manage user preferences, and control third-party scripts in line with major privacy regulations such as GDPR, CCPA\u002FCPRA, ePrivacy, LGPD, POPIA, PIPEDA, and similar frameworks.\u003C\u002Fp>\n\u003Cp>The plugin is designed to be easy to configure while offering the controls needed to understand and manage cookies used on your website.\u003C\u002Fp>\n\u003Cspan class=\"embed-youtube\" style=\"text-align:center; display: block;\">\u003Ciframe loading=\"lazy\" class=\"youtube-player\" width=\"750\" height=\"422\" src=\"https:\u002F\u002Fwww.youtube.com\u002Fembed\u002F93LIh4ARMN8?version=3&rel=1&showsearch=0&showinfo=1&iv_load_policy=1&fs=1&hl=en-US&autohide=2&wmode=transparent\" allowfullscreen=\"true\" style=\"border:0;\" sandbox=\"allow-scripts allow-same-origin allow-popups allow-presentation allow-popups-to-escape-sandbox\">\u003C\u002Fiframe>\u003C\u002Fspan>\n\u003Ch3>Customizable Cookie Consent Banner\u003C\u002Fh3>\n\u003Cp>You can configure the cookie banner to match your website’s design and consent requirements.\u003Cbr \u002F>\nAvailable options include:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Multiple banner layouts and positions\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Customizable text, colors, and button labels\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Category-based consent for analytics, marketing, and functional cookies\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Optional explicit accept or reject actions\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Display banners based on visitor location where applicable\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwplegalpages.com\u002F?utm_source=wordpress.org&utm_medium=readme&utm_campaign=link\" rel=\"nofollow ugc\">🔗Learn More About WPLP Cookie Consent\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>Cookie Scanning and Detection\u003C\u002Fh3>\n\u003Cp>WPLP Cookie Consent includes a built-in cookie scanner that detects cookies and third-party services used on your website.\u003Cbr \u002F>\nThe scanner helps you:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Identify cookies and scripts added by common service\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Group cookies by category for clearer disclosure\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Keep cookie information updated as your site changes\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Detected cookie details can be used to inform your cookie policy and consent configuration.\u003C\u002Fp>\n\u003Ch3>Automatic Script and Content Blocking\u003C\u002Fh3>\n\u003Cp>The plugin can prevent certain third-party scripts from loading until user consent is provided.\u003Cbr \u002F>\nThis includes commonly used services such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Analytics tools\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Advertising and marketing scripts\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Embedded media and social content\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Script blocking works with scripts added directly, through plugins, or via tag managers. Support for Google Consent Mode v2 is included, allowing Google services to adjust behavior based on consent signals.\u003C\u002Fp>\n\u003Ch3>Smart Embed Control\u003C\u002Fh3>\n\u003Cp>Third-party content such as videos, maps, or social embeds can be blocked until consent is given.\u003Cbr \u002F>\nWhen content is blocked:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Placeholders are displayed instead of loading external resources\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Visitors can choose to enable content by providing consent\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Placeholder behavior can be configured from the admin area\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Consent Records\u003C\u002Fh3>\n\u003Cp>The plugin can store consent-related information such as:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>Consent status by category\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Date and time of interaction\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>These records are stored on your website and can be used for reference or internal review purposes.\u003C\u002Fp>\n\u003Ch3>Supported Privacy Regulations\u003C\u002Fh3>\n\u003Cp>WPLP Cookie Consent is built to support a wide range of privacy and data protection regulations, including:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\n\u003Cp>GDPR and ePrivacy Directive (European Union)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>CCPA and CPRA (United States)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>LGPD (Brazil)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>POPIA (South Africa)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>PIPEDA (Canada)\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>UK GDPR and related frameworks\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Setup and Compatibility\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>\n\u003Cp>Guided setup to help configure basic consent settings\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Compatible with popular themes and page builders\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Works with WooCommerce, Google Tag Manager, and commonly used plugins\u003C\u002Fp>\n\u003C\u002Fli>\n\u003Cli>\n\u003Cp>Translation-ready and compatible with multilingual plugins\u003C\u002Fp>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Support & Documentation\u003C\u002Fh3>\n\u003Cp>\u003Ca href=\"https:\u002F\u002Fwplegalpages.com\u002Fdocs\u002F?utm_source=wordpress.org&utm_medium=wpcookieconsentplugin&utm_campaign=readme\" rel=\"nofollow ugc\">Documentation\u003C\u002Fa> and setup guides are available to help configure the plugin.\u003Cbr \u002F>\nFor questions related to features or compatibility, you can \u003Ca href=\"https:\u002F\u002Fwplegalpages.com\u002Fcontact-us\u002F?utm_source=wordpress.org&utm_medium=wpcookieconsentplugin&utm_campaign=readme\" rel=\"nofollow ugc\">contact the WPLP Legal Pages support team\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Part of the WPLP Compliance Platform\u003C\u002Fh3>\n\u003Cp>WPLP Cookie Consent integrates with the WPLP Compliance Platform to support broader privacy management workflows, including cookie policy generation and legal page management.\u003C\u002Fp>\n\u003Cp>Additional features are available in premium plans. Details about available plans and features can be found on the \u003Ca href=\"https:\u002F\u002Fwplegalpages.com\u002Fpricing\u002F?utm_source=wordpress.org&utm_medium=wpcookieconsentplugin&utm_campaign=readme\" rel=\"nofollow ugc\">pricing page\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Disclaimer\u003C\u002Fh3>\n\u003Cp>This plugin provides tools to help manage cookie consent and related settings. It does not guarantee compliance with any specific law or regulation. Website owners are responsible for ensuring their sites meet applicable legal requirements.\u003C\u002Fp>\n","WPLP Cookie Consent helps WordPress website owners display cookie consent banners, manage user preferences, and control third-party scripts in line wi &hellip;",552544,94,49,"2026-03-04T06:19:00.000Z","3.3.1","7.0",[135,56,136,137,59],"cookie-banner","cookie-notice","eu-cookie-law","https:\u002F\u002Fwplegalpages.com\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fgdpr-cookie-consent.4.2.3.zip",89,10,"2026-02-18 14:54:28",{"attackSurface":144,"codeSignals":168,"taintFlows":217,"riskAssessment":218,"analyzedAt":228},{"hooks":145,"ajaxHandlers":164,"restRoutes":165,"shortcodes":166,"cronEvents":167,"entryPointCount":27,"unprotectedCount":27},[146,152,155,160],{"type":147,"name":148,"callback":149,"file":150,"line":151},"action","wp_enqueue_scripts","enqueue_scripts","cookie-confirm.php",28,{"type":147,"name":153,"callback":154,"file":150,"line":35},"wp_footer","footer_js",{"type":147,"name":156,"callback":157,"file":158,"line":159},"admin_init","theme_options_init","theme-options.php",3,{"type":147,"name":161,"callback":162,"file":158,"line":163},"admin_menu","theme_options_add_page",4,[],[],[],[],{"dangerousFunctions":169,"sqlUsage":170,"outputEscaping":172,"fileOperations":27,"externalRequests":27,"nonceChecks":27,"capabilityChecks":27,"bundledLibraries":216},[],{"prepared":27,"raw":27,"locations":171},[],{"escaped":27,"rawEcho":173,"locations":174},25,[175,178,180,182,184,185,187,189,191,193,194,195,197,198,200,201,203,204,206,207,209,210,212,213,215],{"file":150,"line":176,"context":177},64,"raw output",{"file":150,"line":179,"context":177},73,{"file":150,"line":181,"context":177},82,{"file":150,"line":183,"context":177},97,{"file":150,"line":100,"context":177},{"file":150,"line":186,"context":177},101,{"file":150,"line":188,"context":177},107,{"file":158,"line":190,"context":177},134,{"file":158,"line":192,"context":177},151,{"file":158,"line":192,"context":177},{"file":158,"line":192,"context":177},{"file":158,"line":196,"context":177},156,{"file":158,"line":196,"context":177},{"file":158,"line":199,"context":177},158,{"file":158,"line":199,"context":177},{"file":158,"line":202,"context":177},160,{"file":158,"line":202,"context":177},{"file":158,"line":205,"context":177},193,{"file":158,"line":205,"context":177},{"file":158,"line":208,"context":177},218,{"file":158,"line":208,"context":177},{"file":158,"line":211,"context":177},243,{"file":158,"line":211,"context":177},{"file":158,"line":214,"context":177},275,{"file":158,"line":214,"context":177},[],[],{"summary":219,"deductions":220},"The \"cookie-confirm\" plugin version 0.4 exhibits a concerning lack of security best practices despite having no known vulnerabilities or identified critical taint flows. While the plugin boasts a zero attack surface from a traditional perspective (no AJAX, REST API, shortcodes, or cron events) and uses prepared statements for SQL queries, the static analysis reveals significant issues.  A complete absence of output escaping (0% properly escaped) for all 25 identified outputs is a critical flaw. This means any user-provided input that is displayed by the plugin could be vulnerable to Cross-Site Scripting (XSS) attacks, allowing attackers to inject malicious scripts into a user's browser. Furthermore, the complete lack of nonce checks and capability checks on any potential entry points (even though there are zero identified) suggests a general disregard for input validation and authorization, which is a significant security weakness. The plugin's vulnerability history is clean, but this is likely due to the limited attack surface and the possibility that the output escaping flaw has not yet been discovered or exploited.  Overall, while the plugin appears simple and free of known exploits, the fundamental flaw in output escaping presents a substantial risk.",[221,224,226],{"reason":222,"points":223},"Output escaping missing for all outputs",15,{"reason":225,"points":33},"No nonce checks implemented",{"reason":227,"points":33},"No capability checks implemented","2026-03-16T20:49:08.156Z",{"wat":230,"direct":237},{"assetPaths":231,"generatorPatterns":232,"scriptPaths":233,"versionParams":236},[],[],[234,235],"http:\u002F\u002Fassets.cookieconsent.silktide.com\u002Fcurrent\u002Fplugin.min.js","http:\u002F\u002Fassets.cookieconsent.silktide.com\u002Fcurrent\u002Fstyle.min.css",[],{"cssClasses":238,"htmlComments":241,"htmlAttributes":242,"restEndpoints":246,"jsGlobals":247,"shortcodeOutput":250},[239,240],"cc-notification-logo","cc-notification-permissions",[],[243,244,245],"id=\"fcw_logo\"","id=\"cc-notification-logo\"","id=\"cc-notification-permissions\"",[],[248,249],"cc.initialise","window.cc",[]]