{"id":327562,"date":"2026-06-21T06:43:48","date_gmt":"2026-06-21T06:43:48","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/sogo-consent\/"},"modified":"2026-06-21T06:43:31","modified_gmt":"2026-06-21T06:43:31","slug":"sogo-consent","status":"publish","type":"plugin","link":"https:\/\/fuc.wordpress.org\/plugins\/sogo-consent\/","author":23517821,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.2","stable_tag":"1.1.2","tested":"7.0","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"Sogo Consent","header_author":"Sogo Digital","header_description":"Privacy and cookie consent banner with admin settings. MVP \u2013 no external services, no tracking.","assets_banners_color":"f5f8fe","last_updated":"2026-06-21 06:43:31","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/sogo.co.il\/","rating":0,"author_block_rating":0,"active_installs":0,"downloads":51,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.2":{"tag":"1.1.2","author":"sogodigital","date":"2026-06-21 06:43:31"}},"upgrade_notice":{"1.1.2":"<p>Internal identifiers were updated to use the final Sogo Consent prefix required by WordPress.org review. No visible changes; no action required.<\/p>","1.1.1":"<p>Fixes mobile and tablet banner layout for all four layout options. No settings changes required after upgrading.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3580374,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3580374,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3580374,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3580374,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.2"],"block_files":[],"assets_screenshots":[],"screenshots":[]},"plugin_section":[],"plugin_tags":[268163,16626,35890,131785,396],"plugin_category":[54],"plugin_contributors":[268164],"plugin_business_model":[],"class_list":["post-327562","plugin","type-plugin","status-publish","hentry","plugin_tags-consent-banner","plugin_tags-cookie-consent","plugin_tags-cookie-notice","plugin_tags-gdpr","plugin_tags-privacy","plugin_category-security-and-spam-protection","plugin_contributors-sogodigital","plugin_committers-sogodigital"],"banners":{"banner":"https:\/\/ps.w.org\/sogo-consent\/assets\/banner-772x250.png?rev=3580374","banner_2x":"https:\/\/ps.w.org\/sogo-consent\/assets\/banner-1544x500.png?rev=3580374","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/sogo-consent\/assets\/icon-128x128.png?rev=3580374","icon_2x":"https:\/\/ps.w.org\/sogo-consent\/assets\/icon-256x256.png?rev=3580374","generated":false},"screenshots":[],"raw_content":"<!--section=description-->\n<p>Sogo Consent adds a customisable cookie consent banner to your WordPress site. All settings are managed from the WordPress admin. No external services are used. No visitor data is sent anywhere.<\/p>\n\n<p><strong>Consent modes<\/strong><\/p>\n\n<ul>\n<li><strong>Full consent mode<\/strong> \u2014 shows Accept All, Reject Non-Essential, and Preferences buttons. The Preferences button opens a modal where visitors can toggle Analytics and Marketing cookie categories individually.<\/li>\n<li><strong>Simple notice mode<\/strong> \u2014 shows a single acknowledgement button. Clicking it records that the visitor saw the notice. It does not enable analytics or marketing cookies.<\/li>\n<\/ul>\n\n<p><strong>Layout options<\/strong><\/p>\n\n<p>Four layout options are available: bottom full-width strip, bottom centre card, bottom right card, bottom left card. On mobile and tablet (992px and below) all layouts automatically become a centred floating card.<\/p>\n\n<p><strong>Behaviour options<\/strong><\/p>\n\n<ul>\n<li>Show or hide the banner without deactivating the plugin<\/li>\n<li>Auto-hide the banner after a configurable number of seconds (1\u201360)<\/li>\n<li>Set how long to remember the visitor's choice (1\u2013730 days)<\/li>\n<li>Bump the policy version to ask visitors to choose again after a policy change<\/li>\n<\/ul>\n\n<p><strong>Appearance options<\/strong><\/p>\n\n<p>Customise background colour, text colour, title colour, primary and secondary button colours, corner radius, and box shadow \u2014 all from the Appearance tab in admin.<\/p>\n\n<p><strong>Consent storage<\/strong><\/p>\n\n<p>Consent is stored as a first-party browser cookie named <code>sogo_consent<\/code>. It uses <code>SameSite=Lax<\/code> and <code>Secure<\/code> (HTTPS only). The cookie contains the consent status, timestamp, policy version, banner mode, and category choices. No consent data is stored in the WordPress database.<\/p>\n\n<p><strong>Developer integration<\/strong><\/p>\n\n<p>A public JavaScript API is available on every page after the plugin loads:<\/p>\n\n<ul>\n<li><code>window.SogoConsent.getConsent()<\/code> \u2014 returns the current consent object or null<\/li>\n<li><code>window.SogoConsent.hasConsented()<\/code> \u2014 returns true if valid consent exists<\/li>\n<li><code>window.SogoConsent.resetConsent()<\/code> \u2014 clears the cookie and re-shows the banner<\/li>\n<\/ul>\n\n<p>A DOM event fires whenever consent changes:<\/p>\n\n<pre><code>document.addEventListener('sogoconsent:change', function(e) { console.log(e.detail); });\n<\/code><\/pre>\n\n<p>Use this event to activate or deactivate analytics or marketing scripts based on the visitor's choice.<\/p>\n\n<p><strong>Cache compatibility<\/strong><\/p>\n\n<p>The banner HTML is always present in the page source (hidden via the <code>hidden<\/code> attribute). JavaScript reads the consent cookie on <code>DOMContentLoaded<\/code> and decides whether to show the banner. This approach works with full-page caching plugins.<\/p>\n\n<p><strong>RTL and Hebrew support<\/strong><\/p>\n\n<p>The plugin auto-detects the WordPress admin language via <code>is_rtl()<\/code>. On Hebrew installs, all admin labels and default banner text are in Hebrew. The frontend CSS includes scoped RTL layout rules for the modal, toggle, and card positioning.<\/p>\n\n<p><strong>What this plugin does NOT do<\/strong><\/p>\n\n<ul>\n<li>It does not automatically block third-party scripts. It provides a JavaScript API and DOM event so your code or a tag manager can act on consent.<\/li>\n<li>It does not guarantee legal compliance with GDPR, CCPA, or any other privacy regulation. Consult a qualified legal or privacy professional for your specific situation.<\/li>\n<li>It does not scan or detect which cookies your site sets.<\/li>\n<li>It does not store per-visitor consent records in the WordPress database.<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>sogo-consent<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress admin.<\/li>\n<li>Go to <strong>Settings \u2192 Cookie Consent<\/strong> to configure the banner.<\/li>\n<li>Visit the <strong>Content<\/strong> tab to set banner text and button labels.<\/li>\n<li>Visit the <strong>Behaviour<\/strong> tab to choose banner mode, layout, and dismiss settings.<\/li>\n<li>Visit the <strong>Appearance<\/strong> tab to customise colours and shape.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20block%20analytics%20or%20marketing%20scripts%20automatically%3F\"><h3>Does this plugin block analytics or marketing scripts automatically?<\/h3><\/dt>\n<dd><p>No. The plugin shows a consent banner and records the visitor's choice in a browser cookie. It provides a public JavaScript API (<code>window.SogoConsent<\/code>) and a DOM event (<code>sogoconsent:change<\/code>) so your own code, Google Tag Manager, or another tool can activate or deactivate scripts based on the visitor's consent. Script blocking is not handled by this plugin.<\/p><\/dd>\n<dt id=\"where%20is%20visitor%20consent%20stored%3F\"><h3>Where is visitor consent stored?<\/h3><\/dt>\n<dd><p>Consent is stored entirely in the visitor's browser as a first-party cookie named <code>sogo_consent<\/code>. No consent data is stored in the WordPress database.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20work%20with%20caching%20plugins%3F\"><h3>Does the plugin work with caching plugins?<\/h3><\/dt>\n<dd><p>Yes. The banner HTML is always rendered in the page source and hidden with the <code>hidden<\/code> attribute. JavaScript reads the consent cookie client-side on page load. This approach is compatible with full-page caching plugins.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20update%20my%20privacy%20policy%3F\"><h3>What happens when I update my privacy policy?<\/h3><\/dt>\n<dd><p>Update the <strong>Policy Update Version<\/strong> value in the Behaviour tab (for example, change <code>1.0<\/code> to <code>1.1<\/code>). Any visitor whose saved consent was recorded under the old version will see the banner again the next time they visit.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20support%20hebrew%3F\"><h3>Does the plugin support Hebrew?<\/h3><\/dt>\n<dd><p>Yes. Hebrew translations are bundled with the plugin. On Hebrew installs, admin labels and default banner text are displayed in Hebrew automatically. No additional translation files need to be installed.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20a%20%22reset%20consent%22%20link%20to%20a%20page%3F\"><h3>How do I add a \"reset consent\" link to a page?<\/h3><\/dt>\n<dd><p>Add the shortcode <code>[sogo_consent_reset]<\/code> to any page, post, or widget. Clicking it clears the visitor's consent cookie and shows the banner again.<\/p><\/dd>\n<dt id=\"does%20this%20plugin%20guarantee%20gdpr%20or%20legal%20compliance%3F\"><h3>Does this plugin guarantee GDPR or legal compliance?<\/h3><\/dt>\n<dd><p>No. The plugin provides a consent interface as a starting point. Whether your implementation meets legal requirements depends on your region, audience, and the specific cookies your site sets. Consult a qualified legal or privacy professional.<\/p><\/dd>\n<dt id=\"what%20is%20the%20auto-hide%20feature%3F\"><h3>What is the auto-hide feature?<\/h3><\/dt>\n<dd><p>When auto-hide is enabled, the banner closes automatically after the number of seconds you set. The consent record is saved with <code>status: auto_dismissed<\/code>. This is not treated as consent to analytics or marketing cookies \u2014 those remain false in the consent record.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Internal identifiers were updated to use the final Sogo Consent prefix required by WordPress.org review. No effect on the public JS API (<code>window.SogoConsent<\/code>) or the <code>sogoconsent:change<\/code> event.<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Fixed mobile and tablet banner layout: all layout variants now display as a centred floating card at 992px and below.<\/li>\n<li>Fixed RTL desktop layout: bottom-right and bottom-left card options now correctly appear on their labelled physical side on RTL sites.<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<li>Full consent mode with Accept All, Reject Non-Essential, and Preferences modal.<\/li>\n<li>Simple notice mode with single acknowledgement button.<\/li>\n<li>Four layout options: bottom full-width, bottom centre, bottom right, bottom left.<\/li>\n<li>Appearance, Behaviour, and Content settings tabs.<\/li>\n<li>Public JavaScript API and DOM event for third-party integrations.<\/li>\n<li>RTL and Hebrew support built in.<\/li>\n<li>Cache-compatible output.<\/li>\n<\/ul>","raw_excerpt":"Lightweight cookie consent banner with full admin control. Supports Hebrew and English. No external services. No tracking.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/327562","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=327562"}],"author":[{"embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/sogodigital"}],"wp:attachment":[{"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=327562"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=327562"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=327562"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=327562"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=327562"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/fuc.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=327562"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}