{"id":379154,"date":"2026-10-09T22:53:48","date_gmt":"2026-10-09T22:53:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/flat-consent\/"},"modified":"2026-10-10T09:16:47","modified_gmt":"2026-10-10T09:16:47","slug":"flat-consent","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/flat-consent\/","author":23577823,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.2","stable_tag":"1.0.2","tested":"7.1.3","requires":"6.3","requires_php":"7.4","requires_plugins":null,"header_name":"Flat Consent","header_author":"Flat Consent","header_description":"Adds your Flat Consent cookie banner to every page, first in the head, and gives you a \"Cookie settings\" link block and shortcode.","assets_banners_color":"efeeec","last_updated":"2026-10-10 09:16:47","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/flatconsent.com\/docs\/install\/","header_author_uri":"https:\/\/flatconsent.com\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":99,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"getflatconsent","date":"2026-10-09 22:53:23","revision":3737407},"1.0.1":{"tag":"1.0.1","author":"getflatconsent","date":"2026-10-10 07:33:36","revision":3737693},"1.0.2":{"tag":"1.0.2","author":"getflatconsent","date":"2026-10-10 09:16:47","revision":3737827}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3737407,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3737407,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3737407,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3737407,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":{"flat-consent\/settings-link":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"flat-consent\/settings-link","version":"1.0.0","title":"Cookie settings link","category":"widgets","icon":"shield","description":"A link that opens the Flat Consent banner's settings, so visitors can change their choice. Put it in your footer.","keywords":["cookie","consent","privacy","footer"],"textdomain":"flat-consent","attributes":{"label":{"type":"string","default":""}},"supports":{"html":false,"align":false,"color":{"text":true,"background":false,"link":true},"typography":{"fontSize":true},"spacing":{"margin":true}},"editorScript":"file:.\/index.js","render":"file:.\/render.php"}},"tagged_versions":["1.0.0","1.0.1","1.0.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[166295,223629,20272,16626,131785],"plugin_category":[],"plugin_contributors":[285451],"plugin_business_model":[],"class_list":["post-379154","plugin","type-plugin","status-publish","hentry","plugin_tags-ccpa","plugin_tags-consent-mode","plugin_tags-cookie-banner","plugin_tags-cookie-consent","plugin_tags-gdpr","plugin_contributors-getflatconsent","plugin_committers-getflatconsent"],"banners":{"banner":"https:\/\/ps.w.org\/flat-consent\/assets\/banner-772x250.png?rev=3737407","banner_2x":"https:\/\/ps.w.org\/flat-consent\/assets\/banner-1544x500.png?rev=3737407","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/flat-consent\/assets\/icon-128x128.png?rev=3737407","icon_2x":"https:\/\/ps.w.org\/flat-consent\/assets\/icon-256x256.png?rev=3737407","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Flat Consent is a cookie consent banner. You set it up in the Flat Consent dashboard; this plugin puts it on your WordPress site.<\/p>\n\n<p>The plugin does three things:<\/p>\n\n<ul>\n<li>It prints your install line as the first thing in the head of every page, before any other script, with no async or defer. The banner can only hold back trackers that load after it, so it has to come first.<\/li>\n<li>It adds a \"Cookie settings link\" block and a <code>[flat_consent_settings]<\/code> shortcode. Both add a link that opens the banner's settings, so visitors can change their choice from any page.<\/li>\n<li>It warns you in the admin if another cookie consent plugin is active (CookieYes, WPLP Cookie Consent, Complianz, Cookiebot, iubenda or Termly), so visitors don't see two banners.<\/li>\n<\/ul>\n\n<p>It also tells WP Rocket, LiteSpeed Cache and Autoptimize not to delay, defer or combine the banner script.<\/p>\n\n<p>If the <a href=\"https:\/\/wordpress.org\/plugins\/wp-consent-api\/\">WP Consent API<\/a> plugin is active, each visitor's choice is passed to it, so plugins that ask the WP Consent API (such as Site Kit by Google and WooCommerce) follow the same choice.<\/p>\n\n<p>What the banner shows, which regions it appears in, its wording and design, and the list of cookies are all set in the Flat Consent dashboard, not in WordPress. You need a Flat Consent account. Flat Consent is a paid service, from $9 a month per site, with a 14-day free trial and no card needed to start. Plans are listed at <a href=\"https:\/\/flatconsent.com\/\">flatconsent.com<\/a>. When a trial ends without a plan, the banner stops showing until one is chosen.<\/p>\n\n<h4>Setting it up<\/h4>\n\n<ol>\n<li>Create an account at <a href=\"https:\/\/app.flatconsent.com\/signup\">app.flatconsent.com\/signup<\/a> and add your site.<\/li>\n<li>On the Install tab, copy the install line.<\/li>\n<li>In WordPress, go to Settings &gt; Flat Consent, paste the line (or only the site ID) and save.<\/li>\n<li>If you use a page cache, clear it. Then press Check my site on the Install tab.<\/li>\n<\/ol>\n\n<p>Full instructions are at <a href=\"https:\/\/flatconsent.com\/docs\/install\/\">flatconsent.com\/docs\/install<\/a>.<\/p>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects your site to Flat Consent, a cookie consent service run by Flat Consent. Without it, the plugin shows no banner.<\/p>\n\n<p>Once you save a site ID, every page of your site includes a script loaded from <code>https:\/\/cdn.flatconsent.com\/s\/YOUR_SITE_ID.js<\/code>. The plugin itself sends nothing to Flat Consent; the requests below are made by your visitors' browsers when a page loads.<\/p>\n\n<ul>\n<li>Loading the script. The browser requests the banner script from cdn.flatconsent.com. Like any web request, this sends the visitor's IP address and browser details.<\/li>\n<li>Loading the settings. The script requests your site's banner settings from cdn.flatconsent.com, sending your site ID and the visitor's preferred languages. We use the IP address only to work out the visitor's country and state, so the banner can follow the rules that apply there, then discard it.<\/li>\n<li>Recording a choice. When a visitor accepts, rejects or changes their choice, the script sends a record to cdn.flatconsent.com: a random ID for that choice, the time, the choice for each category, the banner version, the language shown and whether the browser sent Global Privacy Control. We add the visitor's country and region and the browser family (for example \"Chrome\"). We store no IP addresses and no full browser strings. Records are kept in a Cloudflare database restricted to EU jurisdiction.<\/li>\n<\/ul>\n\n<p>The banner sets one cookie, <code>cmp_consent<\/code>, which holds the visitor's choice.<\/p>\n\n<ul>\n<li>Terms of service: <a href=\"https:\/\/flatconsent.com\/terms\/\">https:\/\/flatconsent.com\/terms\/<\/a><\/li>\n<li>Privacy policy: <a href=\"https:\/\/flatconsent.com\/privacy\/\">https:\/\/flatconsent.com\/privacy\/<\/a><\/li>\n<li>Data processing agreement: <a href=\"https:\/\/flatconsent.com\/dpa\/\">https:\/\/flatconsent.com\/dpa\/<\/a><\/li>\n<li>Subprocessors: <a href=\"https:\/\/flatconsent.com\/subprocessors\/\">https:\/\/flatconsent.com\/subprocessors\/<\/a><\/li>\n<li>Security: <a href=\"https:\/\/flatconsent.com\/security\/\">https:\/\/flatconsent.com\/security\/<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Install and activate the plugin from Plugins &gt; Add New.<\/li>\n<li>Go to Settings &gt; Flat Consent.<\/li>\n<li>Paste your site ID, or the whole line from the Install tab in your Flat Consent dashboard, and save.<\/li>\n<li>Add the \"Cookie settings link\" block to your footer, or put <code>[flat_consent_settings]<\/code> in a footer widget.<\/li>\n<li>If you use a page cache, clear it.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"where%20do%20i%20find%20my%20site%20id%3F\"><h3>Where do I find my site ID?<\/h3><\/dt>\n<dd><p>In the Flat Consent dashboard, open your site and go to the Install tab. The line there looks like <code>&lt;script src=\"https:\/\/cdn.flatconsent.com\/s\/3f9a1c2e4b5d6a7f.js\"&gt;&lt;\/script&gt;<\/code>, and the part before <code>.js<\/code> is the site ID. You can paste the whole line into the plugin's settings.<\/p><\/dd>\n<dt id=\"can%20i%20change%20the%20link%20text%3F\"><h3>Can I change the link text?<\/h3><\/dt>\n<dd><p>Yes. In the block, type over the text. With the shortcode, use <code>[flat_consent_settings label=\"Privacy settings\"]<\/code> or <code>[flat_consent_settings]Privacy settings[\/flat_consent_settings]<\/code>.<\/p><\/dd>\n<dt id=\"do%20i%20need%20the%20footer%20link%3F\"><h3>Do I need the footer link?<\/h3><\/dt>\n<dd><p>Visitors need a way to change their choice from any page. If your page has the link, the banner uses it and adds nothing else. In places where the law requires a \"Your privacy choices\" link and your page has none, the banner adds one to the end of your footer, or a small button if the page has no footer.<\/p><\/dd>\n<dt id=\"i%20had%20another%20cookie%20plugin.%20what%20should%20i%20do%3F\"><h3>I had another cookie plugin. What should I do?<\/h3><\/dt>\n<dd><p>Deactivate it, so visitors are asked once, by one banner. The plugin shows a notice on the Plugins screen and the Dashboard while one of the plugins it knows about is active.<\/p><\/dd>\n<dt id=\"the%20check%20says%20the%20line%20isn%27t%20first.\"><h3>The check says the line isn't first.<\/h3><\/dt>\n<dd><p>Your theme may print scripts before it calls <code>wp_head()<\/code>. Check your theme's header.php: <code>wp_head()<\/code> should come before any script tag. If an optimisation plugin other than WP Rocket, LiteSpeed Cache or Autoptimize delays or combines scripts, exclude <code>cdn.flatconsent.com<\/code> in its settings. Cloudflare Rocket Loader also changes the order scripts run in; if the check still fails, turn it off.<\/p><\/dd>\n<dt id=\"can%20i%20change%20where%20the%20line%20is%20printed%3F\"><h3>Can I change where the line is printed?<\/h3><\/dt>\n<dd><p>The line is hooked to <code>wp_head<\/code> at the lowest possible priority. Developers can change that with the <code>flat_consent_head_priority<\/code> filter.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Passes each visitor's choice to the WP Consent API when that plugin is active.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Settings page and readme describe the 14-day free trial, which replaces the free plan.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>First release: install line first in the head, settings page, \"Cookie settings link\" block and shortcode, notice when another consent plugin is active.<\/li>\n<\/ul>","raw_excerpt":"Adds your Flat Consent cookie banner to every page, first in the head, with a \"Cookie settings\" link block and shortcode.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/379154","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=379154"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/getflatconsent"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=379154"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=379154"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=379154"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=379154"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=379154"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=379154"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}