Drejtpërdrejt · statusi OK
OW Consent · v1.4.3 · GPL-2.0-or-later

Pëlqimi për WordPress
që bllokon para klikimit.

OW Consent i neutralizon gjurmuesit brenda HTML-së para se vizitori të ketë zgjedhur, zbaton regjimin ligjor të juridiksionit të tij dhe e shkruan çdo vendim në një regjistër të lidhur në zinxhir që mund ta verifikosh. Njëmbëdhjetë profile përputhshmërie, nëntë regjime me emër — nga GDPR-ja te CCPA-ja. Falas, GPL, pa version Pro.

v1.4.3GPL-2.0-or-laterWordPress 6.2+PHP 7.4+
Pse

Pse edhe një shtojcë tjetër pëlqimi?

Banneri nuk ka qenë kurrë problemi. Pothuajse çdo faqe ka një të tillë, dhe gjurmuesit nisen prapëseprapë që në bajtin e parë: skripti i Analytics është shkruar drejt e në temë, pikseli reklamues ekzekutohet nga fundfaqja, iframe-i i YouTube-it i lëshon cookie-t e veta ndërsa banneri shfaqet sipër. Klikimi mbi «Pranoji të gjitha» nuk lejon më asgjë atëherë: vetëm ratifikon atë që tashmë ka ndodhur.

Kurthi i dytë është cache-i. Sapo një shtojcë vendos për HTML-në duke lexuar cookie-n e vizitorit, ajo bëhet e papajtueshme me një cache faqesh — ose, edhe më keq, ia shërben zgjedhjet e një vizitori një tjetri. I treti është prova: neni 7.1 kërkon të demonstrohet pëlqimi, dhe një kutizë e shënuar diku në bazën e të dhënave nuk demonstron asgjë.

OW Consent niset pikërisht nga këto tri kushte. HTML-ja e shërbyer është e njëjtë për të gjithë, me gjithë gjurmuesit e neutralizuar, dhe është shfletuesi ai që liron çfarë ka dhënë vizitori. Çdo vendim i shtohet një zinxhiri hash-esh të nënshkruar. Ndërsa regjimi i zbatuar — opt-in apo opt-out, lidhja «Do Not Sell», sinjali GPC detyrues apo jo — ndjek juridiksionin, jo një kutizë të parazgjedhur.

Një banner që mbërrin pas gjurmuesve

Në modalitetin strikt, të aktivizuar si parazgjedhje, dokumenti rishkruhet në dalje: skriptet neutralizohen në text/plain, iframe-t kalojnë në about:blank pas një kutie të klikueshme, pikselat zëvendësohen me një GIF transparent, sugjerimet e lidhjes hiqen. Vizitori që nuk kliken kurrë nuk i ngarkon kurrë këto burime.

Cache-i i faqeve kundër pëlqimit

Asgjë në rrugën e renderimit nuk e lexon cookie-n. Gjendja e vizitorit rindërtohet brenda shfletuesit dhe vendoset mbi etiketën html para shfaqjes së parë. LiteSpeed, WP Rocket, Varnish ose një CDN mund ta ruajnë faqen në cache pa i përzier kurrë dy vizitorë.

Një provë që nuk mund të prodhohet

Çdo ngjarje i bashkohet një tabele të lidhur në zinxhir, çdo rresht nënshkruhet me HMAC bashkë me hash-in e të mëparshmit, ndërsa spiranca e kokës ruhet jashtë tabelës. E nëse regjistri refuzon të shkruajë, API-ja përgjigjet me 503, e anulon cookie-n dhe nuk liron asnjë gjurmues: një pëlqim që faqja nuk di ta provojë është një pëlqim që ajo nuk e pretendon.

Nën kapuç

Çfarë ndryshon konkretisht

Pa slogane. Këto janë vendimet teknike që e dallojnë këtë produkt.

Gjurmuesit bllokohen brenda kodit HTML

Në modalitetin strikt — të aktivizuar si parazgjedhje — dokumenti i plotë kapet në dalje dhe rishkruhet në pesë kalime: skriptet marrin type text/plain me URL-në e tyre të vendosur në data-owc-src, iframe-t kalojnë në about:blank pas një kutie «Prano» me emrin e ofruesit, pikselat matës zëvendësohen me një GIF 1×1 transparent, preconnect dhe dns-prefetch hiqen (një sugjerim i thjeshtë hap tashmë një lidhje TLS dhe e jep IP-në), ndërsa mediat e palëve të treta që janë tashmë në katalog e humbin autoplay-in. Katalogu i përfshirë numëron 175 firma për 71 ofrues, dhe ti mund të shtosh, të korrigjosh ose të fshish prej tyre nga paneli i administrimit. Si parazgjedhje, një skript i panjohur i palës së tretë kalon, ndërsa një iframe e panjohur bllokohet.

Ndërtuar për të punuar pas një cache faqesh

Asgjë nga ajo që jep serveri nuk varet nga cookie-ja e vizitorit: të njëjtat etiketa të neutralizuara u shërbehen të gjithëve, dhe runtime-i i rikthen brenda shfletuesit, sipas radhës së dokumentit, vetëm për kategoritë e dhëna. Gjendja vuloset mbi etiketën html para shfaqjes së parë, pra pa banner që pulson. Tokeni i shkrimit merret i freskët para çdo dërgimi dhe nuk futet kurrë në HTML të ruajtur në cache: marrja e tij ka tavan 4 sekonda dhe mungesa e tij nuk e bllokon kurrë një zgjedhje.

Njëmbëdhjetë profile përputhshmërie, nëntë regjime me emër

GDPR, UK PECR, nFADP zvicerane, Ligji 25 i Kebekut, LGPD, CCPA, POPIA, PIPL, DPDP e Indisë, plus një profil australian dhe një profil amerikan i përgjithshëm. Profili nuk është dekorativ: ai vendos modelin ligjor (opt-in, ose i dhënë deri në refuzim për CCPA-në, profilin e përgjithshëm amerikan dhe Australinë), praninë e lidhjes «Do Not Sell or Share» — një klikim e kryen vërtet opt-out-in, nuk hap ndonjë panel —, karakterin detyrues apo jo të sinjalit Global Privacy Control, si dhe gjuhën e autoritetin mbikëqyrës që citohen në dokumentet e gjeneruara. Zbulimi sipas shtetit ekziston, i çaktivizuar si parazgjedhje.

Një regjistër pëlqimesh që mund ta verifikosh

Çdo pranim, refuzim, ndryshim ose tërheqje i bashkohet një tabele të dedikuar: rreshti nënshkruhet me HMAC-SHA-256 (ose SHA3-256) bashkë me hash-in e të mëparshmit, ndërsa spiranca e kokës ruhet jashtë tabelës që një cungim të bjerë në sy. Regjistrohen një token pseudonim i shfletuesit, IP-ja e cunguar, një hash i user-agent-it, faqja, profili në fuqi, revizioni i saktë i bannerit të shfaqur dhe hash-i i politikave të lidhura — kurrë emër, kurrë adresë. Një buton e verifikon gjithë zinxhirin dhe e emërton këputjen; eksporti CSV ose JSON mbart një zarf që i lejon një pale të tretë ta riverifikojë një fragment. Ruajtja e parazgjedhur: 5 vjet.

Skaner faqeje dhe katalog i redaktueshëm

Vjen i çaktivizuar, për ta ndezur kur të duash: skaneri i shfleton faqet e tua me WP-Cron (25 URL si parazgjedhje, i rregullueshëm deri në 500) duke ndërthurur ballinën, faqet, artikujt, llojet e përmbajtjes dhe taksonomitë. Tri burime të veçanta dhe të gjurmueshme: HTML-ja e shërbyer, header-at Set-Cookie — të vetmet cookie që një skanim nga serveri mund t'i provojë, dhe të vetmet që asgjë nuk mund t'i bllokojë — dhe një sondë brenda faqes e rezervuar për administratorët e kyçur, e cila kap atë që një menaxher etiketash injekton në runtime. Një gjetje bëhet rregull katalogu me një klikim. Dhe raporti thotë çfarë nuk ka lexuar, në vend që ta paraqesë një skanim të pjesshëm si inventar.

Dokumente ligjore dhe portal kërkesash

Katër dokumente të gjeneruara si faqe WordPress me versione — politika e cookie-ve, politika e privatësisë, njoftimi ligjor, kushtet e përgjithshme — në gjuhën e juridiksionit (frëngjisht, anglisht, portugalisht), me autoritetin mbikëqyrës dhe tabelën e gjurmuesve që del nga skanimi. Publikimi refuzohet për sa kohë një fushë e detyrueshme ligjërisht mbetet bosh, dhe çdo dokument mbart një paralajmërim që kujton ta japësh për rishikim. Nga ana e të drejtave, shortcode-i owc_dsar_form hap shtatë lloje kërkesash, të verifikuara me një shkëmbim e-maili; afati i nenit 12.3 nis nga konfirmimi i identitetit, dhe kërkesa hap paralelisht një kërkesë vendase të WordPress-it, që eksporti ose fshirja të mbulojë të gjitha shtojcat e faqes.

Krahasim

Përballë alternativave

Të dhëna të verifikueshme. Të shënohet vetëm ajo që ekziston realisht te konkurrenti.

KriterOW ConsentComplianzCookieYesBorlabs Cookie
Modeli ekonomikFalas, GPL-2.0-or-laterFreemium (Pro me pagesë)Freemium (Pro me pagesë)Nuk deklarohet
Çelës licence për t'u aktivizuarAsnjëPër versionin ProPër versionin ProNuk deklarohet
Metoda e bllokimit të gjurmuesveRishkrim i HTML-së nga ana e serverit, 175 firma të përfshira dhe të redaktueshmeNuk deklarohetNuk deklarohetNuk deklarohet
Regjistër provash i lidhur në zinxhir dhe i verifikueshëmZinxhir HMAC-SHA-256, spirancë jashtë tabelës, verifikim me një klikimNuk deklarohetNuk deklarohetNuk deklarohet
Profile përputhshmërie të përfshira11 profile, 9 regjime me emërNuk deklarohetNuk deklarohetNuk deklarohet
Banner pëlqimi i konfigurueshëm4 pozicione, temë e çelët / e errët / automatike
Portal kërkesash për ushtrimin e të drejtaveI përfshirë: formular, verifikim me e-mail, afati i nenit 12.3Nuk deklarohetNuk deklarohetNuk deklarohet
Ku qëndrojnë pëlqimet e regjistruaraNë bazën e të dhënave të strehimit tënd, pa asnjë shërbim të palës së tretëNuk deklarohetNuk deklarohetNuk deklarohet
Integrim

Tre mënyra për të integruar një formular

Pa page builder pronësor të detyruar. Zgjidh qasjen që i përshtatet stack-ut tënd.

<!-- Çfarë shtyp tema jote -->
<script src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>
<iframe src="https://www.youtube.com/embed/VIDEO_ID"></iframe>

<!-- Çfarë merr vizitori para çdo pëlqimi (modaliteti strikt, si parazgjedhje) -->
<script type="text/plain"
        data-owc-cat="analytics"
        data-owc-vendor="Google"
        data-owc-src="https://www.googletagmanager.com/gtag/js?id=G-XXXXXXXXXX"></script>

<span class="owc-embed-placeholder" data-owc-cat="social" data-owc-vendor="Google">
  <span class="owc-embed-text">Google content blocked: this content uses cookies…</span>
  <button type="button" class="owc-embed-accept" data-owc-cat="social">Accept Google</button>
  <iframe data-owc-cat="social"
          data-owc-src="https://www.youtube.com/embed/VIDEO_ID"
          src="about:blank"></iframe>
</span>

<!-- Ky kod është i njëjtë për të gjithë, me gjithë cache-in e faqeve.
     Është runtime-i, brenda shfletuesit, ai që i rikthen etiketat e
     kategorive të dhëna, sipas radhës së dokumentit. Tërheqja e
     pëlqimit e ringarkon faqen: një skript i ekzekutuar nuk shkarkohet. -->
Pyetje teknike

Dyshime të arsyeshme, përgjigje të drejtpërdrejta

A bllokohen vërtet gjurmuesit para pëlqimit?

Po, dhe bllokimi qëndron brenda kodit HTML, jo në një premtim. Në modalitetin strikt, të aktivizuar si parazgjedhje, dokumenti kapet në dalje dhe pesë kalime rishkruajnë skriptet, iframe-t, pikselat, sugjerimet e lidhjes dhe mediat e palëve të treta. Dy kufij që duhet t'i dish: bllokimi real mbështetet te katalogu me 175 firma dhe te firmat e kodit inline — një skript i panjohur i palës së tretë lejohet si parazgjedhje, ndërsa një iframe e panjohur bllokohet —, dhe nëse e çaktivizon modalitetin strikt, trajtohen vetëm skriptet e regjistruara nga WordPress-i, jo ato të shkruara drejt e në temë. Së fundi, një dokument mbi 8 MB ose një dështim i motorit të shprehjeve të rregullta shërbehet i paprekur, në vend që të thyhet.

A pajtohet me cache-in tim të faqeve?

Po, ky ka qenë kushti nistor. HTML-ja e shërbyer është e njëjtë për të gjithë vizitorët, me gjithë gjurmuesit e neutralizuar, ndërsa gjendja e pëlqimit rindërtohet brenda shfletuesit nga cookie-ja dhe zbatohet para shfaqjes së parë. Asnjë cache nuk mund t'ia shërbejë zgjedhjet e një vizitori një tjetri. Kundërpesha është e qartë: regjimi i vizitorit vendoset nga ana e klientit, prandaj pa JavaScript nuk regjistrohet asgjë. Një vizitor pa JavaScript sheh një bllok noscript, nuk ngarkon asgjë jothelbësore dhe nuk mbetet kurrë i mbyllur pas një dritareje që s'e mbyll dot.

Çfarë ndryshon konkretisht profili i përputhshmërisë?

Ai vendos modelin ligjor: opt-in për GDPR-në, UK PECR, nFADP zvicerane, Ligjin 25, LGPD, POPIA, PIPL dhe DPDP; i dhënë deri në refuzim për CCPA-në, profilin e përgjithshëm amerikan dhe Australinë. Vendos edhe shfaqjen e lidhjes «Do Not Sell or Share» (vetëm CCPA dhe profili amerikan i përgjithshëm), karakterin detyrues të sinjalit GPC (po ato dy profile: gjetkë sinjali pasqyrohet në ekran, por nuk regjistrohet asgjë), si dhe gjuhën e autoritetin mbikëqyrës të dokumenteve të gjeneruara. Zbulimi sipas shtetit është fakultativ dhe i çaktivizuar si parazgjedhje; ai dështon në mënyrë të mbyllur, domethënë drejt regjimit më strikt. Dy kufij të pranuar hapur: nuk ka ndarje shtet për shtet në SHBA e as provincë për provincë në Kanada, dhe skedari i MaxMind-it as shkarkohet, as ngarkohet nga shtojca — ti e vendos vetë në uploads/ow-geoip/.

A provon vërtet diçka regjistri?

Provon aq sa provon çelësi që e nënshkruan, dhe shtojca ta thotë hapur. Çdo rresht nënshkruhet me HMAC bashkë me hash-in e të mëparshmit dhe spiranca e kokës ruhet jashtë tabelës, kështu që një modifikim, një cungim apo një zbrazje bien në sy gjatë verifikimit. Por nëse AUTH_KEY dhe AUTH_SALT nuk janë në wp-config.php dhe nuk ke përcaktuar OWC_LEDGER_KEY, çelësi vjen nga baza e të dhënave: kushdo që ka qasje në bazë mund ta rinënshkruajë zinxhirin. Në këtë rast shtojca shfaq një njoftim administrimi dhe raporton vetë se zinxhiri nuk është më i pafalsifikueshëm, në vend që të vazhdojë ta pohojë.

A e bën moduli IAB TCF faqen time një CMP të certifikuar?

Jo, dhe kjo është e rëndësishme të thuhet përpara se ta marrësh, jo pas. Moduli e zbaton TCF v2.2 nga ana e shfletuesit — API-ja __tcfapi, vargu TC i koduar, cookie-ja euconsent-v2 — por nuk jep CMP ID: ai caktohet nga IAB Europe pas regjistrimit, dhe pa të moduli nuk emeton absolutisht asgjë. Edhe perimetri është i kufizuar: vetëm segmenti Core, asnjë kufizim botuesi i emetuar, dy veçori speciale të mbështetura, pa shtrirje globale. Thënë troç, ai punon si një CMP i pajtueshëm jozyrtar, çka mjafton për shumë integrime, por nuk zëvendëson një regjistrim zyrtar — Google AdSense, në veçanti, e refuzon në prodhim brenda ZEE-së. Moduli është i çaktivizuar si parazgjedhje.

Çfarë ndodh nëse e çaktivizoj ose e fshij shtojcën?

Çaktivizimi nuk prek asnjë të dhënë: ai vetëm heq detyrat e planifikuara. Në fshirje, dy gjëra ikin gjithmonë, pavarësisht cilësimit tënd: detyrat e planifikuara dhe tabela e kërkesave për ushtrimin e të drejtave, e vetmja tabelë që përmban të dhëna drejtpërdrejt identifikuese të palëve të treta, të cilat asgjë nuk i kufizon më sapo shtojca të ketë ikur. Pjesa tjetër — regjistri i pëlqimeve, gjetjet e skanerit, katalogu i gjurmuesve — mbijeton, veç nëse ke shënuar shprehimisht fshirjen e plotë, e pashënuar si parazgjedhje: prova jote e pëlqimit sipas nenit 7.1 nuk duhet të zhduket bashkë me një çinstalim.

Falas. Pa asterisk.

Pa version Pro, pa çelës licence.

OW Consent publikohet me licencën GPL-2.0-or-later. Gjithçka që përshkruan kjo faqe gjendet në .zip-in që shkarkon: asnjë modul i rezervuar, asnjë abonim, asnjë kufi në numrin e faqeve, të pëlqimeve apo të kërkesave.

  • Gjithçka është brenda: banneri, bllokimi i gjurmuesve, skaneri, katalogu i redaktueshëm, regjistri i zinxhirtë, gjeneruesi i dokumenteve, portali i kërkesave, Consent Mode v2, TCF v2.2 dhe Global Privacy Control.
  • .zip-i shkarkohet në optionweb.dev: instaloje nga Shtojcat → Shto të re → Ngarko shtojcën. Së paku WordPress 6.2 — më poshtë, shtojca refuzon të niset dhe e thotë këtë, në vend që të shfaqë një banner që nuk bllokon asgjë.
  • Asnjë shërbim i palës së tretë, asnjë kontroll licence, asnjë gjurmues i shtuar: pëlqimet, kërkesat dhe dokumentet mbeten në bazën e të dhënave të strehimit tënd.
  • Kodi është nën GPL-2.0-or-later, i lexueshëm dhe i modifikueshëm, me pikat e tij të zgjerimit të dokumentuara: filtrat owc_settings, owc_scripts_catalog, owc_blocker_allowlist, owc_policy_template, dhe veprimet e regjistrit.
Krijuar nga Julien Daniel · Châtelet, Belgjikë