{"id":327491,"date":"2026-06-29T11:17:51","date_gmt":"2026-06-29T11:17:51","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/matrixinn-gdpr-uk-compliance\/"},"modified":"2026-09-30T19:06:02","modified_gmt":"2026-09-30T19:06:02","slug":"matrixinn-gdpr","status":"publish","type":"plugin","link":"https:\/\/bre.wordpress.org\/plugins\/matrixinn-gdpr\/","author":23270254,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.1.1","stable_tag":"2.1.1","tested":"7.1.2","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"MatrixInn GDPR & UK Compliance","header_author":"MatrixInn Solutions","header_description":"A comprehensive GDPR and UK GDPR compliance plugin. Cookie consent banner, consent logging, Cookie Policy generator, and Google Consent Mode v2. Fully compatible with WordPress core privacy tools.","assets_banners_color":"9fa9b4","last_updated":"2026-09-30 19:06:02","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/matrixinnsolutions.com\/plugins\/matrixinn-gdpr","header_author_uri":"https:\/\/matrixinnsolutions.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":425,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.5":{"tag":"1.0.5","author":"matrixinnsolutions","date":"2026-06-29 11:17:40","revision":3589965},"1.0.6":{"tag":"1.0.6","author":"matrixinnsolutions","date":"2026-06-29 12:26:03","revision":3590076},"1.0.7":{"tag":"1.0.7","author":"matrixinnsolutions","date":"2026-09-29 17:53:46","revision":3719562},"2.0.0":{"tag":"2.0.0","author":"matrixinnsolutions","date":"2026-09-29 23:56:32","revision":3720044},"2.0.1":{"tag":"2.0.1","author":"matrixinnsolutions","date":"2026-09-30 10:55:14","revision":3721030},"2.1.0":{"tag":"2.1.0","author":"matrixinnsolutions","date":"2026-09-30 15:12:58","revision":3721554},"2.1.1":{"tag":"2.1.1","author":"matrixinnsolutions","date":"2026-09-30 19:06:02","revision":3721895}},"upgrade_notice":{"2.1.1":"<p>Maintenance release.<\/p>","2.1.0":"<p>Adds Cookie Policy styling options, a policy shortcode for page builders and an option to hide the banner logo.<\/p>","2.0.1":"<p>Fixes banner buttons and tabs being restyled by some themes.<\/p>","2.0.0":"<p>New tabbed consent banner, working data request forms and improved Google Consent Mode. Your settings and consent records are kept; review the new banner design after updating.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.gif":{"filename":"icon-128x128.gif","revision":3590049,"resolution":"128x128","location":"assets","locale":""},"icon-128x128.png":{"filename":"icon-128x128.png","revision":3589987,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.gif":{"filename":"icon-256x256.gif","revision":3590049,"resolution":"256x256","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3589987,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon.svg":{"filename":"icon.svg","revision":3590049,"resolution":false,"location":"assets","locale":false}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3720071,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3720071,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.5","1.0.6","1.0.7","2.0.0","2.0.1","2.1.0","2.1.1"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3720044,"resolution":"1","location":"assets","locale":"","width":800,"height":500},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3720044,"resolution":"2","location":"assets","locale":"","width":800,"height":500},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3720044,"resolution":"3","location":"assets","locale":"","width":800,"height":500},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3720044,"resolution":"4","location":"assets","locale":"","width":800,"height":500},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3720044,"resolution":"5","location":"assets","locale":"","width":800,"height":500},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3720044,"resolution":"6","location":"assets","locale":"","width":800,"height":500}},"screenshots":{"1":"Consent banner \u2014 Consent tab","2":"Details tab with the cookie declaration","3":"Bottom bar layout","4":"Admin \u2014 Appearance settings","5":"Admin \u2014 Consent Logs","6":"Admin \u2014 Cookie Policy generator"}},"plugin_section":[],"plugin_tags":[223629,20272,16626,131785,269463],"plugin_category":[54],"plugin_contributors":[269464],"plugin_business_model":[],"class_list":["post-327491","plugin","type-plugin","status-publish","hentry","plugin_tags-consent-mode","plugin_tags-cookie-banner","plugin_tags-cookie-consent","plugin_tags-gdpr","plugin_tags-uk-gdpr","plugin_category-security-and-spam-protection","plugin_contributors-matrixinnsolutions","plugin_committers-matrixinnsolutions"],"banners":{"banner":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/banner-772x250.png?rev=3720071","banner_2x":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/banner-1544x500.png?rev=3720071","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/icon.svg?rev=3590049","icon":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/icon.svg?rev=3590049","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/screenshot-1.png?rev=3720044","caption":"Consent banner \u2014 Consent tab"},{"src":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/screenshot-2.png?rev=3720044","caption":"Details tab with the cookie declaration"},{"src":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/screenshot-3.png?rev=3720044","caption":"Bottom bar layout"},{"src":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/screenshot-4.png?rev=3720044","caption":"Admin \u2014 Appearance settings"},{"src":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/screenshot-5.png?rev=3720044","caption":"Admin \u2014 Consent Logs"},{"src":"https:\/\/ps.w.org\/matrixinn-gdpr\/assets\/screenshot-6.png?rev=3720044","caption":"Admin \u2014 Cookie Policy generator"}],"raw_content":"<!--section=description-->\n<p><strong>MatrixInn GDPR &amp; UK Compliance<\/strong> adds a clear, tabbed cookie consent banner to your WordPress site and keeps the records you need to show that visitors consented. Everything runs on your own site: no external service, no account, no subscription.<\/p>\n\n<h4>Consent banner<\/h4>\n\n<ul>\n<li>Tabbed banner \u2014 <strong>Consent<\/strong>, <strong>Details<\/strong> (a full cookie declaration) and <strong>About<\/strong><\/li>\n<li>Three layouts: centre popup, bottom bar or corner box<\/li>\n<li>Four categories: Necessary (always on), Preferences, Statistics and Marketing \u2014 hide any category your site does not use<\/li>\n<li>Equal-weight Accept all \/ Accept selected \/ Decline buttons<\/li>\n<li>Floating cookie-settings button so visitors can change or withdraw consent at any time<\/li>\n<li>Your own title, message, button labels, accent colour, text colour and logo (or hide the logo row)<\/li>\n<li>Keyboard accessible, mobile friendly, no jQuery on the front end<\/li>\n<\/ul>\n\n<h4>Proof of consent<\/h4>\n\n<ul>\n<li>Every decision is logged: categories, date and time, page, policy version and IP address (anonymised by default)<\/li>\n<li>Consent Logs screen with totals, a detailed table and CSV download<\/li>\n<li>Works on page-cached sites (logging uses the WordPress REST API, not an expiring nonce)<\/li>\n<li>Records of logged-in users are included in WordPress personal data exports and erasures<\/li>\n<\/ul>\n\n<h4>Cookie Policy generator<\/h4>\n\n<ul>\n<li>Generates and publishes a Cookie Policy page from your business details, active categories and cookie lists<\/li>\n<li>UK businesses get UK GDPR \/ PECR wording and an ICO complaint link<\/li>\n<li>Publishing a new version asks visitors to consent again (optional)<\/li>\n<li>Style the policy content \u2014 font, text and heading sizes, text, heading and link colours, table colours \u2014 or keep your theme's style<\/li>\n<li><code>[matrixinn_gdpr_cookie_policy]<\/code> shortcode shows the always-current policy inside Elementor or any other page builder<\/li>\n<\/ul>\n\n<h4>Google Consent Mode v2<\/h4>\n\n<ul>\n<li>Denies all Google storage types by default at the top of <code>&lt;head&gt;<\/code>, before your Google tags run<\/li>\n<li>Updates <code>analytics_storage<\/code>, <code>ad_storage<\/code>, <code>ad_user_data<\/code>, <code>ad_personalization<\/code>, <code>functionality_storage<\/code> and <code>personalization_storage<\/code> from the visitor's choice<\/li>\n<li>Returning visitors' choices are applied immediately on every page<\/li>\n<\/ul>\n\n<h4>Blocking other scripts<\/h4>\n\n<p>Mark any script with <code>type=\"text\/plain\" data-minn-category=\"statistics\"<\/code> (or <code>preferences<\/code> \/ <code>marketing<\/code>) and it only runs after the visitor allows that category.<\/p>\n\n<h4>Data subject requests<\/h4>\n\n<ul>\n<li><code>[matrixinn_gdpr_export]<\/code> \u2014 visitors request a copy of their personal data<\/li>\n<li><code>[matrixinn_gdpr_erasure]<\/code> \u2014 visitors request deletion of their personal data<\/li>\n<\/ul>\n\n<p>Requests use WordPress core privacy tools: the visitor confirms by email and you process the request under <strong>Tools \u2192 Export \/ Erase Personal Data<\/strong>.<\/p>\n\n<h4>Support &amp; documentation<\/h4>\n\n<p>Setup guide and FAQs: <a href=\"https:\/\/matrixinnsolutions.com\/plugins\/matrixinn-gdpr\">MatrixInn GDPR documentation<\/a><\/p>\n\n<p>Built by <a href=\"https:\/\/matrixinnsolutions.com\">MatrixInn Solutions<\/a>, the software house behind the <a href=\"https:\/\/wordpress.org\/plugins\/matrixinn-floating-buttons\/\">MatrixInn Floating Buttons<\/a> plugin and the WA Float WhatsApp button for Shopify.<\/p>\n\n<p><strong>Please note:<\/strong> this plugin gives you the tools for cookie consent; it is not legal advice. How the law applies depends on your site, so review your cookie lists and policy wording, or ask a qualified adviser.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Install from <strong>Plugins \u2192 Add New<\/strong> (search for \"MatrixInn GDPR\"), or upload the <code>matrixinn-gdpr<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to <strong>GDPR Compliance<\/strong> in the admin menu.<\/li>\n<li>Under <strong>Cookie Categories<\/strong>, list the cookies your site sets and untick categories you do not use.<\/li>\n<li>Under <strong>Cookie Policy<\/strong>, enter your business details and click <strong>Create Cookie Policy page<\/strong>.<\/li>\n<li>Optionally add <code>[matrixinn_gdpr_export]<\/code> and <code>[matrixinn_gdpr_erasure]<\/code> to your Privacy Policy page.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20block%20google%20analytics%20before%20consent%3F\"><h3>Does it block Google Analytics before consent?<\/h3><\/dt>\n<dd><p>With Google Consent Mode enabled (the default for new installs), Google tags start in \"denied\" mode and only store cookies after consent. For non-Google scripts, use <code>type=\"text\/plain\" data-minn-category=\"\u2026\"<\/code> as described above.<\/p><\/dd>\n<dt id=\"where%20is%20consent%20stored%3F\"><h3>Where is consent stored?<\/h3><\/dt>\n<dd><p>The visitor's choice is stored in their browser in a first-party cookie called <code>minn_gdpr_consent<\/code> (365 days by default). A copy of each decision is stored in your database as proof of consent.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20page%20caching%3F\"><h3>Does it work with page caching?<\/h3><\/dt>\n<dd><p>Yes. The banner and consent state are handled in the browser, and consent records are sent to the WordPress REST API, which is not cached.<\/p><\/dd>\n<dt id=\"how%20do%20visitors%20change%20their%20choice%20later%3F\"><h3>How do visitors change their choice later?<\/h3><\/dt>\n<dd><p>With the floating cookie button in the bottom-left corner, or any link with the class <code>minn-gdpr-open<\/code> (or a link to <code>#cookie-settings<\/code>).<\/p><\/dd>\n<dt id=\"i%20upgraded%20from%201.x%20%E2%80%94%20what%20happens%20to%20my%20settings%3F\"><h3>I upgraded from 1.x \u2014 what happens to my settings?<\/h3><\/dt>\n<dd><p>Your banner texts, button labels, logging, policy and business settings are kept, your accept-button colour becomes the new accent colour, and existing consent records and visitor choices remain valid. Only the banner design changes; review it under <strong>Appearance<\/strong>.<\/p><\/dd>\n<dt id=\"my%20cookie%20policy%20page%20is%20built%20with%20elementor.%20how%20do%20i%20keep%20it%20up%20to%20date%3F\"><h3>My Cookie Policy page is built with Elementor. How do I keep it up to date?<\/h3><\/dt>\n<dd><p>Page builders keep their own copy of the page, so the \"Update Cookie Policy page\" button cannot change it. Add a Shortcode widget with <code>[matrixinn_gdpr_cookie_policy]<\/code> instead \u2014 it always shows the current policy, using the styling from <strong>Cookie Policy \u2192 Page styling<\/strong>.<\/p><\/dd>\n<dt id=\"my%20site%20is%20behind%20cloudflare%20or%20another%20proxy.\"><h3>My site is behind Cloudflare or another proxy.<\/h3><\/dt>\n<dd><p>Consent records use the connecting IP (<code>REMOTE_ADDR<\/code>). If your host does not pass the real visitor IP, use the <code>minn_gdpr_client_ip<\/code> filter to read your proxy's header.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.1.1<\/h4>\n\n<ul>\n<li>New: A small, dismissible review request for administrators, shown after a week of use on the Dashboard, Plugins and plugin screens only<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>New: Option to hide the logo \/ site name row at the top of the banner, and a logo-row background colour for white or light logos<\/li>\n<li>New: Cookie Policy page styling \u2014 font, text size, heading size, text, heading and link colours, table header and border colours. Empty settings keep the theme style<\/li>\n<li>New: <code>[matrixinn_gdpr_cookie_policy]<\/code> shortcode for Elementor and other page builders<\/li>\n<li>New: Warning in the Cookie Policy screen when the policy page is built with Elementor<\/li>\n<li>Changed: The generated policy no longer repeats \"Cookie Policy\" as a heading under the page title<\/li>\n<\/ul>\n\n<h4>2.0.1<\/h4>\n\n<ul>\n<li>Fixed: Themes that style every button (e.g. Hello Elementor) could override the banner's buttons, tabs and settings icon. Banner styles now take precedence over theme button styles.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li>New: Tabbed consent banner (Consent \/ Details \/ About) with a full cookie declaration<\/li>\n<li>New: Per-category cookie lists, shown in the banner and in the generated Cookie Policy<\/li>\n<li>New: Accent colour, text colour and logo settings; popup, bottom bar and corner layouts<\/li>\n<li>New: Consent log CSV download; consent records included in WordPress personal data export\/erasure<\/li>\n<li>New: Script blocking with <code>type=\"text\/plain\" data-minn-category=\"\u2026\"<\/code><\/li>\n<li>Improved: Google Consent Mode v2 defaults are printed before other tags, cover all six signals, and returning visitors' choices apply immediately<\/li>\n<li>Improved: Consent logging uses the REST API, so it keeps working on page-cached sites<\/li>\n<li>Improved: Cookie Policy wording adapts to UK and non-UK businesses<\/li>\n<li>Fixed: <code>[matrixinn_gdpr_export]<\/code> and <code>[matrixinn_gdpr_erasure]<\/code> now show a working request form using WordPress core privacy requests<\/li>\n<li>Fixed: Reactivating the plugin no longer deletes consent records<\/li>\n<li>Changed: Front end no longer depends on jQuery<\/li>\n<li>Upgrade: Settings, consent records and visitors' existing choices from 1.x are kept<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Fixed: Byte order mark removed from the main plugin file (caused \"headers already sent\" errors)<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Fixed: Manage preferences button icon not displaying on some themes<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Removed: Script Manager, for WordPress.org compliance<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Added: Overlay behind the centre popup layout<\/li>\n<li>Fixed: Checkbox settings not saving when unchecked<\/li>\n<li>Fixed: Cookie category toggles not appearing on fresh installs<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fixed: Popup and corner layouts positioning<\/li>\n<li>Fixed: Consent logging database schema<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Self-hosted cookie consent for GDPR, UK GDPR and PECR, with consent logging, a Cookie Policy generator and Google Consent Mode v2.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/327491","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=327491"}],"author":[{"embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/matrixinnsolutions"}],"wp:attachment":[{"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=327491"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=327491"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=327491"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=327491"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=327491"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/bre.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=327491"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}