Közösségi média mint külön sütikategória
Hogyan adhatsz a sütisávhoz „Social media” kategóriát MU-pluginnal, és mit kell tudni a korlátairól.
A Complianz alapból három hozzájárulási kategóriát használ (funkcionális, statisztika, marketing), a közösségi média szolgáltatásait a marketinghez sorolja. A kérdés mégis gyakori, ezért egy MU-pluginnal külön Social media kategóriát vehetsz fel a sütisávba.
Fontos: ez nem változtatja meg, hogyan csoportosítja a sütiket és a szolgáltatásokat a cookiedatabase.org. A kategória csak a sávban jelenik meg, és a hozzájárulást a megadott közösségi szolgáltatásokra alkalmazza.
Mit csinál a plugin
Szekció neve “Mit csinál a plugin”- A sütisáv HTML-jébe (szűrő:
cmplz_banner_html) egy új, lenyitható Social media kategóriát tesz a marketing kategória elé, jelölőnégyzettel. - Ha a látogató a Beállítások mentése gombbal elmenti a választását, és a Social media be van jelölve, a plugin engedélyezi az általános kategóriát és a felsorolt szolgáltatásokat, és beállít egy
socialmediasütitallowértékkel. - A következő látogatáskor a jelölőnégyzet be lesz pipálva, ha a süti értéke
allow; a hozzájárulás visszavonásakor a sütidenylesz. - Ha a kategória engedélyezve van,
socialmediaeseményt küld adataLayer-be, és acmplz_tag_manager_eventeseményt is kiváltja (Tag Managerhez).
Amit módosíthatsz
Szekció neve “Amit módosíthatsz”A kód teljes változata az alábbi, az MU-plugin létrehozásához a saját MU-plugin készítéséről szóló fejezet ad útmutatót.
- A Social media kategória leírása (a „Social Media descriptive text” megjegyzés alatti
_e()szöveg), tetszés szerint átírható. Az alapszöveg a marketing kategória leírását ismétli: „The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.” - A szolgáltatások listája (a
servicestömb a szkriptben): itt vehetsz fel vagy törölhetsz közösségi szolgáltatásokat. Alapértelmezés:facebook,instagram,whatsapp,tiktok,pinterest,linkedin,twitter,disqus.
let services = ['facebook', 'instagram', 'whatsapp', 'tiktok', 'pinterest', 'linkedin', 'twitter', 'disqus'];A teljes plugin
Szekció neve “A teljes plugin”<?phpfunction cmplz_add_social_media_category( $html ) { $pattern = '/<details class="cmplz-category cmplz-marketing.*?<\/details>/is'; ob_start(); ?> <details class="cmplz-category cmplz-socialmedia"> <summary> <span class="cmplz-category-header"> <span class="cmplz-category-title"><?php _e( "Social media", "complianz-gdpr" ) ?></span> <span class="cmplz-banner-checkbox"> <input type="checkbox" id="cmplz-socialmedia-optin" data-category="cmplz_socialmedia" class="cmplz-consent-checkbox cmplz-socialmedia" size="40" value="1"> <label class="cmplz-label" for="cmplz-socialmedia-optin" tabindex="0"><span></span></label> </span> <span class="cmplz-icon cmplz-open"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512" height="18"><path d="M224 416c-8.188 0-16.38-3.125-22.62-9.375l-192-192c-12.5-12.5-12.5-32.75 0-45.25s32.75-12.5 45.25 0L224 338.8l169.4-169.4c12.5-12.5 32.75-12.5 45.25 0s12.5 32.75 0 45.25l-192 192C240.4 412.9 232.2 416 224 416z"></path></svg> </span> </span></summary> <div class="cmplz-description"> <span class="cmplz-description-socialmedia"> <!-- Social Media descriptive text --> <?php _e( "The technical storage or access is required to create user profiles to send advertising, or to track the user on a website or across several websites for similar marketing purposes.", "complianz-gdpr" ) ?></span> </div> </details> <?php $social = ob_get_clean(); if ( preg_match( $pattern, $html, $matches ) ) { $marketing = $matches[0]; $html = str_replace( $marketing, $social . $marketing, $html ); } return $html;}add_filter( 'cmplz_banner_html', 'cmplz_add_social_media_category' );
function cmplz_social_media_script() { ob_start(); ?> <script> document.addEventListener('click', e => { if ( e.target.closest('.cmplz-save-preferences') ) { let social_media_enabled = document.querySelector('input.cmplz-socialmedia').checked; if (social_media_enabled) { // szolgáltatások hozzáadása vagy törlése itt // ha bármelyik szolgáltatás engedélyezett, az általános kategória is az, mert egyes szolgáltatások részben általánosak let services = ['facebook', 'instagram', 'whatsapp', 'tiktok', 'pinterest', 'linkedin', 'twitter', 'disqus'];
cmplz_enable_category('', 'general'); for (let key in services) { if (services.hasOwnProperty(key)) { let service = services[key]; if (service.length == 0) continue; cmplz_set_service_consent(service, true); cmplz_enable_category('', service); document.querySelectorAll('.cmplz-accept-service[data-service=' + service + ']').forEach(obj => { obj.checked = true; }); } } cmplz_set_cookie('socialmedia', 'allow'); } } });
document.addEventListener("cmplz_before_cookiebanner", function(e) { if (cmplz_get_cookie('socialmedia') === 'allow'){ document.querySelector('input.cmplz-socialmedia').checked = true; } });
document.addEventListener("cmplz_fire_categories", function (e) { var consentedCategories = e.detail.categories; if ( cmplz_in_array( 'socialmedia', consentedCategories ) ) { if (cmplz_fired_events.indexOf('socialmedia') === -1) { cmplz_fired_events.push('socialmedia'); window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'event': complianz.prefix+'event_socialmedia' }); let event = new CustomEvent('cmplz_tag_manager_event', { detail: 'socialmedia' }); document.dispatchEvent(event); } } });
document.addEventListener("cmplz_revoke", function(e) { cmplz_set_cookie('socialmedia', 'deny'); }); </script> <?php $script = ob_get_clean(); $script = str_replace( array( '<script>', '</script>' ), '', $script ); wp_add_inline_script( 'cmplz-cookiebanner', $script );}add_action( 'wp_enqueue_scripts', 'cmplz_social_media_script', PHP_INT_MAX );Miért nem alapértelmezett a „Social media” kategória?
Szekció neve “Miért nem alapértelmezett a „Social media” kategória?”Az egyik leggyakoribb kérdés a sáv beállításakor: miért nem szerepel a legtöbb sávban „Social media” kategória, csak a funkcionális, a beállítások, a statisztika és a marketing. Az ok az, hogy a legtöbb adatvédelmi jog szerint ez nem megfelelő. Idő kérdése, hogy egy adatvédelmi hatóság vagy egy olyan szervezet, mint a NOYB, fellépjen az olyan webhelyek ellen, amelyek „Social media” kategóriát használnak.
A közösségi média nem cél. A látogató nem tudhatja, mit jelent a „Social media” a sávon. Lehet beágyazott Instagram-videó, láthatatlan Facebook-pixel újracélzáshoz, követés nélküli WhatsApp Business vagy beágyazott Twitter-hírfolyam. Ha a sávon külön kategóriaként kérdezel rá egy funkcióra (közösségi média, spamvédelem, kényelmes böngészés, videó), a további célokhoz (marketing, követés, statisztika) még mindig hiányzik a hozzájárulás.
Mit jelent ez a gyakorlatban? A hozzájárulás előtt tájékoztatnod kell a látogatót, hogy a javasolt funkcióhoz adott hozzájárulás a harmadik felek szolgáltatásainak további céljaira is érvényes (marketing, követés, statisztika). Példa a Facebook-pixelre: ez közösségi szolgáltatás, amely személyes adatot használ marketing- és követési célra. Ilyenkor a marketing/követés kategóriára kell hozzájárulás, nem csak a „közösségi média” funkcióra.
Ritka kivétel, ha egy közösségi szolgáltatás marketing-, követési vagy statisztikai célra nem tárol és nem olvas információt a látogató böngészőjéből vagy eszközéről: ilyenkor a funkcionális és szükséges sütikre vonatkozó ePrivacy-kivétel miatt hozzájárulás egyáltalán nem szükséges.
Készült: