Blokuj osadzone treści (YouTube, Google Maps, Twitter) do czasu wyrażenia zgody przez użytkownika. Darmowe, zgodne z GDPR rozwiązanie dla osadzonych treści podmiotów trzecich.
Za darmo na zawsze. Zgodne z GDPR. Działa ze wszystkimi popularnymi osadzonymi treściami.
Skonfiguruj poniżej swoje narzędzie zgody na osadzone treści. Skopiuj wygenerowany kod i dodaj go do swojej strony.
Ta treść jest zablokowana do czasu zaakceptowania plików cookie
<!-- Embed Consent Tool by TermsBox - https://termsbox.com/embed-consent -->
<script>
(function() {
'use strict';
var TERMSBOX_EMBED_CONFIG = {
blockedDomains: ["youtube.com","youtu.be","vimeo.com","google.com/maps","maps.google.com"],
placeholderText: "Ta treść jest zablokowana do czasu zaakceptowania plików cookie",
buttonText: "Zaakceptuj i załaduj treść",
theme: "light",
rememberConsent: true,
consentDays: 30,
storageKey: 'termsbox_embed_consent'
};
function hasConsent() {
if (!TERMSBOX_EMBED_CONFIG.rememberConsent) return false;
try {
var consent = localStorage.getItem(TERMSBOX_EMBED_CONFIG.storageKey);
if (!consent) return false;
var data = JSON.parse(consent);
return data.granted && data.expires > Date.now();
} catch (e) {
return false;
}
}
function saveConsent() {
if (!TERMSBOX_EMBED_CONFIG.rememberConsent) return;
try {
var expires = Date.now() + (TERMSBOX_EMBED_CONFIG.consentDays * 24 * 60 * 60 * 1000);
localStorage.setItem(TERMSBOX_EMBED_CONFIG.storageKey, JSON.stringify({
granted: true,
expires: expires
}));
} catch (e) {
// localStorage not available
}
}
function shouldBlock(src) {
if (!src) return false;
var srcLower = src.toLowerCase();
return TERMSBOX_EMBED_CONFIG.blockedDomains.some(function(domain) {
return srcLower.indexOf(domain) !== -1;
});
}
function createPlaceholder(iframe) {
var placeholder = document.createElement('div');
placeholder.className = 'termsbox-embed-placeholder';
placeholder.style.cssText = 'display:flex;flex-direction:column;align-items:center;justify-content:center;' +
'padding:40px 20px;text-align:center;border-radius:8px;min-height:200px;' +
(TERMSBOX_EMBED_CONFIG.theme === 'dark'
? 'background:#1f2937;color:#f3f4f6;border:1px solid #374151;'
: 'background:#f3f4f6;color:#1f2937;border:1px solid #e5e7eb;');
var icon = document.createElement('div');
icon.innerHTML = '<svg width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"><rect x="3" y="11" width="18" height="11" rx="2" ry="2"/><path d="m7 11V7a5 5 0 0 1 10 0v4"/></svg>';
icon.style.cssText = 'margin-bottom:16px;opacity:0.6;';
var text = document.createElement('p');
text.textContent = TERMSBOX_EMBED_CONFIG.placeholderText;
text.style.cssText = 'margin:0 0 16px 0;font-size:14px;max-width:300px;';
var button = document.createElement('button');
button.textContent = TERMSBOX_EMBED_CONFIG.buttonText;
button.style.cssText = 'padding:10px 20px;border-radius:6px;cursor:pointer;font-weight:500;font-size:14px;' +
'border:none;transition:opacity 0.2s;' +
(TERMSBOX_EMBED_CONFIG.theme === 'dark'
? 'background:#3b82f6;color:#ffffff;'
: 'background:#2563eb;color:#ffffff;');
button.onmouseover = function() { this.style.opacity = '0.9'; };
button.onmouseout = function() { this.style.opacity = '1'; };
button.onclick = function() {
saveConsent();
loadAllEmbeds();
};
placeholder.appendChild(icon);
placeholder.appendChild(text);
placeholder.appendChild(button);
return placeholder;
}
function loadAllEmbeds() {
var placeholders = document.querySelectorAll('.termsbox-embed-placeholder');
placeholders.forEach(function(placeholder) {
var iframe = placeholder.termsboxOriginalIframe;
if (iframe && placeholder.parentNode) {
placeholder.parentNode.replaceChild(iframe, placeholder);
}
});
}
function processIframes() {
if (hasConsent()) return;
var iframes = document.querySelectorAll('iframe[src]');
iframes.forEach(function(iframe) {
if (shouldBlock(iframe.src)) {
var placeholder = createPlaceholder(iframe);
placeholder.termsboxOriginalIframe = iframe.cloneNode(true);
if (iframe.width) placeholder.style.width = iframe.width + (isNaN(iframe.width) ? '' : 'px');
if (iframe.height) placeholder.style.height = iframe.height + (isNaN(iframe.height) ? '' : 'px');
iframe.parentNode.replaceChild(placeholder, iframe);
}
});
}
// Run on DOM ready
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', processIframes);
} else {
processIframes();
}
// Also observe for dynamically added iframes
if (typeof MutationObserver !== 'undefined') {
var observer = new MutationObserver(function(mutations) {
if (!hasConsent()) {
mutations.forEach(function(mutation) {
mutation.addedNodes.forEach(function(node) {
if (node.nodeType === 1) {
if (node.tagName === 'IFRAME' && shouldBlock(node.src)) {
var placeholder = createPlaceholder(node);
placeholder.termsboxOriginalIframe = node.cloneNode(true);
node.parentNode.replaceChild(placeholder, node);
}
// Check child iframes
var childIframes = node.querySelectorAll && node.querySelectorAll('iframe[src]');
if (childIframes) {
childIframes.forEach(function(iframe) {
if (shouldBlock(iframe.src)) {
var p = createPlaceholder(iframe);
p.termsboxOriginalIframe = iframe.cloneNode(true);
iframe.parentNode.replaceChild(p, iframe);
}
});
}
}
});
});
}
});
observer.observe(document.body || document.documentElement, { childList: true, subtree: true });
}
})();
</script>
<!-- Get your free Embed Consent tool at https://termsbox.com/embed-consent -->Zgoda na osadzone treści to mechanizm ochrony prywatności, który uniemożliwia ładowanie osadzonych treści podmiotów trzecich, dopóki użytkownicy wyraźnie się na to nie zgodzą. Gdy osadzasz treści z platform takich jak YouTube, Google Maps czy media społecznościowe, te osadzone elementy często automatycznie ładują pliki cookie, skrypty śledzące i inne mechanizmy zbierania danych.
Zgodnie z przepisami o ochronie prywatności, takimi jak GDPR, dyrektywa ePrivacy i podobne przepisy na całym świecie, potrzebujesz zgody użytkownika przed załadowaniem takich śledzących treści. Narzędzie zgody na osadzone treści zastępuje te elementy symbolem zastępczym, który wyjaśnia, co zostanie załadowane, i zawiera przycisk umożliwiający użytkownikom wyrażenie zgody.
Po wyrażeniu zgody oryginalna osadzona treść ładuje się normalnie. Narzędzie może zapamiętać ten wybór, aby powracający odwiedzający nie musieli wyrażać zgody ponownie przy każdej wizycie.
Spełniaj unijne wymogi prywatności, uzyskując zgodę przed załadowaniem śledzących treści podmiotów trzecich.
Szanuj prywatność użytkowników, nie udostępniając automatycznie ich danych platformom podmiotów trzecich.
Zapobiegaj potencjalnym karom GDPR, zapewniając właściwą zgodę na wszystkie technologie śledzące.
Pokaż użytkownikom dokładnie, jakie treści podmiotów trzecich zostaną załadowane, zanim wejdą z nimi w interakcję.
Użytkownik odwiedza stronę z osadzoną treścią (YouTube, Maps itp.)
Skrypt wykrywa osadzone elementy z zablokowanych domen i zastępuje je symbolem zastępczym
Symbol zastępczy wyświetla konfigurowalny komunikat z przyciskiem zgody
Użytkownik klika przycisk, aby wyrazić zgodę i załadować wszystkie osadzone treści
Zgoda jest zapisywana w localStorage na potrzeby przyszłych wizyt (jeśli włączono)
YouTube, Vimeo i inne osadzone treści wideo, które ustawiają śledzące pliki cookie.
Osadzone elementy Google Maps, które śledzą dane o lokalizacji i zachowaniu użytkownika.
Osadzone elementy z Twitter/X, Facebook, Instagram i innych platform społecznościowych.
Przestań ładować śledzące treści podmiotów trzecich bez zgody. Skorzystaj z naszego darmowego narzędzia zgody na osadzone treści, aby zachować zgodność z przepisami o ochronie prywatności.
Kompletne rozwiązanie zgody na pliki cookie z konfigurowalnym banerem i preferencjami.
Dodaj link „Do Not Sell My Personal Information” dla zgodności z przepisami Kalifornii.
Wygeneruj kompleksową politykę prywatności dopasowaną do potrzeb Twojej firmy.