Giriş
Bu API, Gizlilik ve Mesajlaşma sekmesinde sunulan mesajlarla etkileşim kurmanızı sağlayan araçlar sağlar. Bu özellik sayesinde şunları yapabilirsiniz:
- Belirli bir kullanıcı için mesajlaşmayı devre dışı bırakma
- Kullanıcının reklam engelleme durumunu sorgulama
- Kullanıcının AB tüzükleri iznini iptal etmesine olanak tanıyan bir giriş noktası oluşturma
- ABD eyalet yönetmelikleri için varsayılan "Satmayın" bağlantısını geçersiz kılma
- Google Ads ve Analytics etiketlerinizi, kullanıcının AB tüzükleri Google izin modu durumuna göre koşullu olarak yükleme
ve diğerleri.
Endüstri standardı protokolleri kullanarak kullanıcı rızası almak için bu araçlardan da yararlanabilirsiniz:
- IAB TCF 2.0 sürümü spesifikasyonunu kullanan GDPR izni
- IAB GPP spesifikasyonunu kullanan ABD eyalet yönetmelikleri kapsamındaki kapsam dışında kalma istekleri
Bu durumlarda izin durumu, söz konusu API'ler aracılığıyla iletilir.
Bu kullanıcı mesajlaşma işlevini sitenizde birkaç şekilde dağıtabilirsiniz:
- Çoğu durumda yeniden etiketleme yapmanız gerekmez. Mevcut Google Yayıncı Etiketi veya AdSense etiketiniz, mesaj ilgili üründe yayınlandıktan sonra kullanıcı mesajlarını dağıtır.
- Reklam engelleme iptali mesajını kullanıyorsanız reklam engelleme etiketini sayfanıza açıkça eklemeniz gerekir. Daha fazla bilgi için Ad Manager ve AdSense etiketleme talimatlarını inceleyin.
googlefc, kullanıcı mesajlaşma işlevinin JavaScript Window üzerindeki API'si için kullandığı global ad alanıdır.
Alan Özetleri
| Ad | Tür | Tanım |
|---|---|---|
googlefc.controlledMessagingFunction
|
function(!Object) | Mesajlaşmaya devam edilip edilmeyeceğini belirleyen bir işlev. Bu işlev tüm mesaj türleri için desteklenir. |
googlefc.callbackQueue
|
!Array<!Object<string, function()>> | !Array<function()> | !googlefc.CallbackQueue | Kullanıcı mesajlaşma sorgularının eşzamansız yürütülmesi için geri çağırma sırasına referans. |
googlefc.CallbackQueue
|
!Object | Geri çağırma sırası nesnesinin türü. |
googlefc.AdBlockerStatusEnum
|
!Object<string, number> | Kullanıcının reklam engelleyici durumunu temsil eden bir enum. |
googlefc.AllowAdsStatusEnum
|
!Object<string, number> | Kullanıcının reklamlara izin verme durumunu temsil eden bir enum. |
googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum
|
!Object<string, number> | Kullanıcının ABD eyaletleri kapsam dışında kalmayı seçme ilk durumunu temsil eden bir enum. Bu, kullanıcının bulunduğu ABD eyaletini dikkate alır. |
googlefc.GoogleFcConsentModeUserStatus
|
!Object |
googlefc.getGoogleConsentModeValues için dönüş türü.
|
googlefc.ConsentModePurposeStatusEnum
|
!Object<string, number> | İzin modu amacına yönelik olarak son kullanıcının kararını temsil eden bir enum. |
googlefc.usstatesoptout.overrideDnsLink
|
undefined|boolean | Kendi özel "Bilgilerimi Satmayın veya Paylaşmayın" bağlantınızı kullanmak için "true" olarak ayarlanabilen bir boole değeri. |
googlefc.ccpa.InitialCcpaStatusEnum
Eski. googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum tercih edin.
|
!Object<string, number> | Kullanıcının ilk ABD eyalet tüzükleri durumunu temsil eden bir enum. |
googlefc.ccpa.overrideDnsLink
Eski. googlefc.usstatesoptout.overrideDnsLink tercih edin.
|
undefined|boolean | Kendi özel "Bilgilerimi Satmayın veya Paylaşmayın" bağlantınızı kullanmak için "true" olarak ayarlanabilen bir boole değeri. |
Yöntem Özetleri
| Ad | Dönüş türü | Tanım |
|---|---|---|
googlefc.showRevocationMessage()
|
tanımsız |
Kullanıcı rızası kaydını temizler ve kullanıcıya uygun kullanıcı rızası alma mesajını göstermek için googlefc komut dosyasını yeniden yükler.
|
googlefc.getAdBlockerStatus()
|
sayı |
Kullanıcının reklam engelleme durumuna bağlı olarak AdBlockerStatusEnum içinde bir değer döndürür.
|
googlefc.getAllowAdsStatus()
|
sayı |
Kullanıcının reklamlara izin verme durumuna bağlı olarak AllowAdsStatusEnum içinde bir değer döndürür.
|
googlefc.usstatesoptout.getInitialUsStatesOptOutStatus()
|
sayı |
Kullanıcının ABD eyalet tüzükleri kapsamı dışında kalmayı seçme ilk durumuna bağlı olarak InitialUsStatesOptOutStatusEnum içinde bir değer döndürür. Bu, kullanıcının mevcut konumuna göre geçerli olan düzenlemeyi dikkate alır.
|
googlefc.usstatesoptout.openConfirmationDialog(function(boolean))
|
tanımsız | Varsayılan Satmayın veya Paylaşmayın bağlantısı geçersiz kılınırsa ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme onay iletişim kutusunu açar. |
googlefc.getGoogleConsentModeValues()
|
!Object |
Kullanıcının mevcut izin modu değerlerini içeren bir googlefc.GoogleFcConsentModeUserStatus nesnesi döndürür.
Mevcut her izin modu amacı için bir nesne döndürülür.
|
googlefc.ccpa.getInitialCcpaStatus()
Eski. googlefc.usstatesoptout.getInitialUsStatesOptOutStatus() tercih edin.
|
sayı |
Kullanıcının ABD eyalet tüzükleri kapsamı dışında kalmayı seçme ilk durumuna bağlı olarak InitialCcpaStatusEnum içinde bir değer döndürür.
|
googlefc.ccpa.openConfirmationDialog(function(boolean))
Eski. googlefc.usstatesoptout.openConfirmationDialog() tercih edin.
|
tanımsız | Varsayılan Satmayın veya Paylaşmayın bağlantısı geçersiz kılınırsa ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme onay iletişim kutusunu açar. |
Sitenizde test ve hata ayıklama yapma
Gizlilik ve Mesajlaşma, belirli mesajların, mesaj alt türlerinin veya mesaj kombinasyonlarının gerçek sitenizde nasıl göründüğünü görmenizi sağlayan hata ayıklama ve test işlevleri sunar.
Ön koşullar:
- Önizlemek istediğiniz mesajlar, test ettiğiniz sitede yayınlanmalıdır.
Aşağıdaki hata ayıklama URL'si parametrelerini kullanarak sitenizde canlı önizleme görebilirsiniz:
| Hata ayıklama parametresi | İzin verilen değerler |
|---|---|
fc |
alwaysshow (hata ayıklama/önizleme modunu tetiklemek için) |
fctype |
ab (Reklam engelleme mesajları), ccpa (ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme mesajları), gdpr (GDPR kullanıcı rızası alma mesajları), monetization (Offerwall mesajları), usfl (ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme mesajları, Florida'ya özel), usnat (ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme mesajları, Florida hariç desteklenen tüm eyaletler; ccpa ile eşdeğer) |
Sitenizde (foo.com) önizleme yapmak için bu özelliği nasıl kullanabileceğinize dair bazı örnekler:
- ABD eyalet yönetmelikleri kapsam dışında kalmayı seçme mesajlarını test etme --
http://foo.com/?fc=alwaysshow&fctype=ccpa - GDPR mesajlarını test etme --
http://foo.com/?fc=alwaysshow&fctype=gdpr
Alanlar: açıklamalar ve örnekler
googlefc.controlledMessagingFunction {function(!Object)}
Mesajların gösterilip gösterilmeyeceğini belirleyen bir işlev. Bu API, abone durumu veya sayfa URL'si gibi yayıncı tarafından belirtilen koşullara göre mesaj oluşturmayı engellemek için kullanılabilir.
Diğer komut dosyaları yüklenmeden önce pencerede googlefc.controlledMessagingFunction tanımladığınızda, message.proceed(boolean) çağrılana kadar mesajlar gösterilmez. message.proceed(true) çağrısı, mesajlaşmanın her zamanki gibi devam etmesini sağlarken message.proceed(false) çağrısı, sayfa görüntüleme için herhangi bir mesajın gösterilmesini engeller.
Örnek: Sayfada, giriş yapmış kullanıcının abone olup olmadığını kontrol eden eş zamansız bir determineIfUserIsSubscriber() işlevi tanımlayan şu komut dosyasının bulunduğunu varsayalım.
<head>
<script>
window.isSubscriber = undefined;
function determineIfUserIsSubscriber() {
if (isSubscriber !== undefined) {
return isSubscriber;
}
return new Promise(resolve => {
setTimeout(() => {
// Change this to true if you want to test what subscribers would see.
window.isSubscriber = false;
resolve(window.isSubscriber);
}, 1000);
});
}
</script>
</head>
Bu, mesajı yalnızca abone olmayanlara göstermek için googlefc.controlledMessagingFunction özelliğini nasıl kullanabileceğinize dair bir örnektir.
<head>
<script>
// Define googlefc and the controlled messaging function on the Window.
window.googlefc = window.googlefc || {};
googlefc.controlledMessagingFunction = async (message) => {
// Determine if the user is a subscriber asynchronously.
const isSubscriber = await determineIfUserIsSubscriber();
if (isSubscriber) {
// If the user is a subscriber, don't show any messages.
message.proceed(false);
} else {
// Otherwise, show messages as usual.
message.proceed(true);
}
}
</script>
</head>
Bu özelliğin, yayıncıların yalnızca belirli mesaj türlerinin engellenmesi gerektiğini belirtmesine olanak tanıyan bir uzantısı da vardır. Diğer mesaj türlerini engellemeden belirli mesaj türlerini engellemek için bu özellik uzantısını kullanın.
Mesaj türüne özel kontrollü mesajlaşma, message.proceed() öğesine ek bir parametre (googlefc.MessageTypeEnum türünde bir Array) iletilerek gerçekleştirilir.
Örnek: Bu örnekte, diğer mesaj türleri engellenmeden yalnızca aboneler için Offerwall yayınını engellemek amacıyla googlefc.controlledMessagingFunction kullanılmaktadır:
<head>
<script>
// Define googlefc and the controlled messaging function on the Window.
window.googlefc = window.googlefc || {};
googlefc.controlledMessagingFunction = async (message) => {
// Determine if the Offerwall should display or not.
const shouldDisplayOfferwall = await determineIfUserIsSubscriber();
const applicableMessageTypes = [];
if (!shouldDisplayOfferwall) {
// Do not show the Offerwall, but allow other message types to display.
applicableMessageTypes.push(window.googlefc.MessageTypeEnum.OFFERWALL);
message.proceed(false, applicableMessageTypes);
} else {
// Otherwise, show messages as usual.
message.proceed(true);
}
}
</script>
</head>
Mesajlaşmayla ilgili çağrıların eşzamansız yürütülmesi için global geri çağırma sırasına referans. Bir işlevi çağırmanın desteklenen tek yolu, işlevi callbackQueue öğesine eklemektir.
Farklı veri türleri farklı zamanlarda kullanılabilir hale geldiğinden, bir işlev, aşağıdaki dizelerden biri anahtar ve yürütülecek işlev değer olacak şekilde bir eşleme olarak eklenmelidir.
Desteklenen anahtarlar:
| Anahtar adı | Kullanım | Göreli gecikme |
|---|---|---|
CONSENT_API_READY
|
CONSENT_API_READY anahtarıyla geri çağırma sırasına eklenen işlevler, desteklenen rıza çerçevelerine yönelik API'ler tanımlandığında ve çağrılabilir olduğunda yürütülür. Bu noktadan sonra, daha sonra eklenen CONSENT_API_READY anahtarlı işlevlerin yürütülmesi eşzamanlı olur. Çerçeveye özgü ayrıntılar için IAB çerçeveleri ile ilgili bölümlere bakın.
|
Düşük |
CONSENT_DATA_READY
|
CONSENT_DATA_READY anahtarıyla geri çağırma sırasına gönderilen işlevler, desteklenen bir izin çerçevesi kapsamında toplanan kullanıcı rızası bilindiğinde (önceki bir yürütmeden veya kullanıcı, kullanıcı rızası alma mesajıyla etkileşime girdikten sonra) yürütülür. Bu noktadan sonra, daha sonra eklenen CONSENT_DATA_READY anahtarlı işlevlerin yürütülmesi eşzamanlı olur.
|
Yüksek |
AD_BLOCK_DATA_READY
|
AD_BLOCK_DATA_READY anahtarıyla geri çağırma sırasına gönderilen işlevler, reklam engelleme verileri akışta kullanılabilir hale geldiğinde yürütülür. Bu noktadan sonra, daha sonra eklenen AD_BLOCK_DATA_READY anahtarlı işlevlerin yürütülmesi eşzamanlı olur.
|
Yüksek |
CONSENT_MODE_DATA_READY
|
CONSENT_MODE_DATA_READY anahtarıyla geri çağırma sırasına eklenen işlevler, Google [izin modu](https://support.google.com/google-ads/answer/10000067) verileri (Google Ads ve Analytics etiketleriyle kullanım için) akışta kullanılabilir hale geldiğinde yürütülür. İzin modu verileri hazır olduğunda googlefc.getGoogleConsentModeValues kullanarak izin modu değerlerine istediğiniz zaman erişebilirsiniz.
|
Orta |
INITIAL_US_STATES_OPT_OUT_DATA_READY
|
INITIAL_US_STATES_OPT_OUT_DATA_READY anahtarıyla geri çağırma sırasına gönderilen işlevler, ABD eyalet düzenlemeleri verileri akışta kullanılabilir hale geldiğinde yürütülür. ABD eyalet tüzükleri verileriyle ilgili sonraki isteklerin doğrudan GPP API (__gpp) çağrılarak alınması gerektiğini unutmayın.
|
Orta |
INITIAL_CCPA_DATA_READY
|
ABD eyalet yönetmelikleri için eski anahtar. INITIAL_US_STATES_OPT_OUT_DATA_READY tercih edin. INITIAL_CCPA_DATA_READY anahtarıyla geri çağırma sırasına gönderilen işlevler, ABD eyalet düzenlemeleri verileri akışta kullanılabilir hale geldiğinde yürütülür. ABD eyalet tüzükleri verileriyle ilgili sonraki isteklerin doğrudan GPP API (__gpp) çağrılarak alınması gerektiğini unutmayın.
|
Orta |
googlefc.CallbackQueue {!Object}
Yöntem özeti:
| Ad | Tür | Parametre | Dönüş türü | Rol |
|---|---|---|---|---|
push(data)
|
sayı |
data: Anahtarın veri kullanılabilirliği türlerinden biri, değerin ise yürütülecek bir JavaScript işlevi olduğu anahtar/değer çifti.
Kabul edilebilir veri kullanılabilirliği anahtarları şunlardır: CONSENT_API_READY,
CONSENT_DATA_READY, AD_BLOCK_DATA_READY,
INITIAL_US_STATES_OPT_OUT_DATA_READY,
CONSENT_MODE_DATA_READY ve (eski)
INITIAL_CCPA_DATA_READY.
|
Şu ana kadar eklenen komutların sayısı. Bu, dizinin mevcut uzunluğunu döndürür. | İletilen işlevi, verilerin kullanılabilir hale gelme sırasına ve ardından bu işlevlerin sıraya eklenme sırasına göre yürütür. |
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback on the callbackQueue.
googlefc.callbackQueue.push({
'AD_BLOCK_DATA_READY':
() => {
if (googlefc.getAdBlockerStatus() == googlefc.AdBlockerStatusEnum.NO_AD_BLOCKER) {
// Handle a non-ad blocking user.
}
}
});
</script>
googlefc.AdBlockerStatusEnum {!Object<string, number>}
Kullanıcının farklı reklam engelleme durumlarını gösterir. Farklı durumlar şunlardır:
googlefc.AdBlockerStatusEnum = {
// Something failed, in an unknown state.
UNKNOWN: 0,
// The user was running an extension level ad blocker.
EXTENSION_AD_BLOCKER: 1,
// The user was running a network level ad blocker.
NETWORK_LEVEL_AD_BLOCKER: 2,
// The user was not blocking ads.
NO_AD_BLOCKER: 3,
};
googlefc.AllowAdsStatusEnum {!Object<string, number>}
Kullanıcının farklı reklam engelleme ve reklamlara izin verme durumlarını gösterir. Farklı durumlar şunlardır:
googlefc.AllowAdsStatusEnum = {
// Something failed, in an unknown state.
UNKNOWN: 0,
// User is currently using an ad blocker, was never using an ad blocker, or
// allowed ads, but not because they saw the Privacy & messaging message.
ADS_NOT_ALLOWED: 1,
// User is no longer using an ad blocker after seeing the ad blocking message.
ADS_ALLOWED: 2,
};
googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum{!Object<string, number>}
Kullanıcının ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme durumlarını gösterir. Farklı durumlar şunlardır:
googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum = {
// Something failed, status unknown.
UNKNOWN: 0,
// No US state regulation applies to this user.
DOES_NOT_APPLY: 1,
// A US state regulation applies to this user, and the user has not opted out yet.
NOT_OPTED_OUT: 2,
// A US state regulation applies to this user, and the user has opted out.
OPTED_OUT: 3,
};
googlefc.GoogleFcConsentModeUserStatus{!Object}
googlefc.getGoogleConsentModeValues tarafından döndürülen nesnenin türü.
interface GoogleFcConsentModeUserStatus {
// End user consent decision value for the ad_storage consent mode purpose.
adStoragePurposeConsentStatus: number;
// End user consent decision value for the ad_user_data consent mode purpose.
adUserDataPurposeConsentStatus: number;
// End user consent decision value for the ad_personalization consent mode purpose.
adPersonalizationPurposeConsentStatus: number;
// End user consent decision value for the analytics_storage consent mode purpose.
analyticsStoragePurposeConsentStatus: number;
}
Her alanın değeri, bir googlefc.ConsentModePurposeStatusEnum enum değerine karşılık gelen bir sayıdır.
googlefc.ConsentModePurposeStatusEnum{!Object<string, number>}
İzin modu amacı için farklı olası son kullanıcı rızası değerlerini temsil eder. Farklı değerler şunlardır:
googlefc.ConsentModePurposeStatusEnum = {
// Indicates either an error state, or that consent mode data is not ready
// yet.
UNKNOWN: 0,
// Consent is granted for the given consent mode purpose.
GRANTED: 1,
// Consent is denied for the given consent mode purpose.
DENIED: 2,
// Consent is not applicable for the given consent mode purpose.
NOT_APPLICABLE: 3,
// The consent mode purpose has not been configured for use in the Privacy &
// messaging UI.
NOT_CONFIGURED: 4
};
googlefc.usstatesoptout.overrideDnsLink{undefined|boolean}
Varsayılan "Kişisel Bilgilerimi Satma veya Paylaşma" bağlantısını gizlemek ve kendi özel "Kişisel Bilgilerimi Satma veya Paylaşma" bağlantınızı kullanmak için bu alanı "true" olarak ayarlayın. Bu işlevin yalnızca Ad Manager'da desteklendiğini unutmayın.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {};
// Signals that the default DNS link will be overridden.
googlefc.usstatesoptout.overrideDnsLink = true;
</script>
googlefc.ccpa.InitialCcpaStatusEnum{!Object<string, number>}
Kullanıcının ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme durumlarını gösterir. Farklı durumlar şunlardır:
googlefc.ccpa.InitialCcpaStatusEnum = {
// Something failed, in an unknown state.
UNKNOWN: 0,
// No US state regulation applies to this user.
CCPA_DOES_NOT_APPLY: 1,
// A US state regulation applies to this user, and the user has not opted out yet.
NOT_OPTED_OUT: 2,
// A US state regulation applies to this user, and the user has opted out.
OPTED_OUT: 3,
};
googlefc.ccpa.overrideDnsLink{undefined|boolean}
Varsayılan "Kişisel Bilgilerimi Satma veya Paylaşma" bağlantısını gizlemek ve kendi özel "Kişisel Bilgilerimi Satma veya Paylaşma" bağlantınızı kullanmak için bu alanı "true" olarak ayarlayın. Bu alanı "true" olarak ayarlarsanız sitenizde "Satmayın veya Paylaşmayın" bağlantısı oluşturmaktan sorumlu olursunuz. Bu alan, openConfirmationDialog ile birlikte kullanılmalıdır. Ayrıca "ABD eyalet yönetmelikleri" mesajlaşma işlevi için kendi özel Satmayın veya Paylaşmayın bağlantınızı kullanma özelliği yalnızca Ad Manager'da desteklenir.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.ccpa = window.googlefc.ccpa || {};
// Signals that the default DNS link will be overridden.
googlefc.ccpa.overrideDnsLink = true;
</script>
Yöntemler: açıklamalar ve örnekler
googlefc.getConsentStatus(): {number}
googlefc.getConsentedProviderIds(): {!Array<string>}
- Bu yöntem artık çağrıldığında her zaman boş bir liste döndürür.
googlefc.showRevocationMessage(): {undefined}
Varsa mevcut AB tüzükleri izin kaydını temizler ve kullanıcının izin kararını değiştirmesine olanak tanımak için AB tüzükleri mesajını tekrar gösterir.
1. örnek: Tıklandığında iptal mesajını gösterecek bir bağlantı oluşturmayla ilgili basit bir örnek:
<a href="javascript:window.googlefc.showRevocationMessage();">Privacy and cookie settings</a>
<a href="javascript:window.googlefc.showRevocationMessage();" style="display: none;" id="revocation-link">Privacy and cookie settings</a>
<script>
window.googlefc = window.googlefc || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
window.googlefc.callbackQueue.push({
'CONSENT_API_READY':
() => {
// Update the revocation link so that it shows on the page.
const revocationLink = document.getElementById('revocation-link');
revocationLink.style.display = 'block';
}
});
</script>
2. örnek: Bağlantının yalnızca mevcut kullanıcı için AB tüzükleri geçerli olduğunda görünür olmasını istiyorsanız belirlendikten sonra gdprApplies değerine göre düğmenin görünümünü koşullu olarak güncellemek için TCF API ile googlefc geri çağırma sırasını kullanabilirsiniz. Bunun için CONSENT_API_READY API anahtarını kullanın.
<a href="javascript:window.googlefc.showRevocationMessage();" style="display: none;" id="revocation-link">Privacy and cookie settings</a>
<script>
window.googlefc = window.googlefc || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
window.googlefc.callbackQueue.push({
'CONSENT_API_READY':
// Specifying "0" for the version parameter will result in the API call
// using the latest version of the TCF spec.
() => __tcfapi('addEventListener', 0, (tcdata, success) => {
const revocationLink = document.getElementById('revocation-link');
if (!success || !tcdata) {
// Something went wrong, don't show the revocation link.
revocationLink.style.display = 'none';
}
else if (tcdata.gdprApplies) {
revocationLink.style.display = 'block';
} else {
// GDPR does not apply so don't show the revocation link.
revocationLink.style.display = 'none';
}
})
});
</script>
googlefc.getAdBlockerStatus(): {number}
Kullanıcının reklam engelleme durumuna bağlı olarak AdBlockerStatusEnum'da bir değer döndürür. Bu işlev için belirtilmesi gereken anahtar: AD_BLOCK_DATA_READY.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback on the callbackQueue.
googlefc.callbackQueue.push({
'AD_BLOCK_DATA_READY':
() => {
switch (googlefc.getAdBlockerStatus()) {
case googlefc.AdBlockerStatusEnum.EXTENSION_LEVEL_AD_BLOCKER:
case googlefc.AdBlockerStatusEnum.NETWORK_LEVEL_AD_BLOCKER:
// Insert handling for cases where the user is blocking ads.
break;
case googlefc.AdBlockerStatusEnum.NO_AD_BLOCKER:
// Insert handling for cases where the user is not blocking ads.
break;
case googlefc.AdBlockerStatusEnum.UNKNOWN:
// Insert handling for unknown cases.
break;
}
}
});
</script>
googlefc.getAllowAdsStatus(): {number}
Kullanıcının reklamlara izin verme durumuna bağlı olarak AllowAdsStatusEnum içinde bir değer döndürür. Bu işlev için belirtilmesi gereken anahtar: AD_BLOCK_DATA_READY.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback on the callbackQueue.
googlefc.callbackQueue.push({
'AD_BLOCK_DATA_READY':
() => {
switch (googlefc.getAllowAdsStatus()) {
case googlefc.AllowAdsStatusEnum.ADS_NOT_ALLOWED:
// Insert handling for cases where the user has not allowed ads.
// The user may have never been an ad blocker.
break;
case googlefc.AllowAdsStatusEnum.ADS_ALLOWED:
// Insert handling for cases where the user saw the ad blocking
// message and allowed ads on the site.
break;
case googlefc.AllowAdsStatusEnum.UNKNOWN:
// Insert handling for unknown cases.
break;
}
}
});
</script>
googlefc.usstatesoptout.getInitialUsStatesOptOutStatus(): {number}
Kullanıcının ABD eyalet tüzüğü kapsamı dışında kalmayı seçme durumuna bağlı olarak InitialUsStatesOptOutStatusEnum içinde bir değer döndürür. Bu işlev için belirtilmesi gereken anahtar INITIAL_US_STATES_OPT_OUT_DATA_READY. ABD eyalet yönetmelikleri verileriyle ilgili sonraki isteklerin doğrudan GPP API'si (__gpp) çağrılarak alınması gerektiğini unutmayın.
"Bilgilerimi Satmayın veya Paylaşmayın" bağlantısını geçersiz kılıyorsanız bağlantıyı sitenize ne zaman ekleyeceğinizi belirlemek için bu yöntemi kullanabilirsiniz.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {}
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback on the callbackQueue.
googlefc.callbackQueue.push({
'INITIAL_US_STATES_OPT_OUT_DATA_READY':
() => {
switch (googlefc.usstatesoptout.getInitialUsStatesOptOutStatus()) {
case googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum.DOES_NOT_APPLY:
// Insert handling for cases where no US state regulation applies to
// the user.
break;
case googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum.NOT_OPTED_OUT:
// Insert handling for cases where a US state regulation applies to
// the user, and the user has not opted out.
break;
case googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum.OPTED_OUT:
// Insert handling for cases where a US state regulation applies to the
// user, and the user has opted out.
break;
}
}
});
</script>
googlefc.usstatesoptout.openConfirmationDialog(function(boolean)): {undefined}
Varsayılan "Satmayın" bağlantısı geçersiz kılınırsa ABD eyalet düzenlemeleri kapsamı dışında kalmayı seçme onayı iletişim kutusunu açar. Kullanıcı onay iletişim kutusuyla etkileşimde bulunduktan sonra, kullanıcı kapsam dışında kalmayı seçerse sağlanan geri çağırma işlevi true ile, aksi takdirde false ile çağrılır.
Örnek:
<script>
// This callback will be called with the user's US state regulation opt-out
// decision.
const usStateRegCompletionCallback = (userOptedOut) => {
// Insert handling for user opt-out status here.
}
// Invoke the US state regulations confirmation dialog when the user clicks the
// link.
document.getElementById("your-custom-do-not-sell-link").addEventListener(
"click", () => googlefc.usstatesoptout.openConfirmationDialog(usStateRegCompletionCallback));
</script>
googlefc.getGoogleConsentModeValues(): {!Object}
Kullanıcının izin kararına göre her bir izin modu amacının mevcut değerlerini içeren bir googlefc.GoogleFcConsentModeUserStatus nesnesi döndürür.
Kullanım amacı için AB tüzükleri için izin modu desteğiyle Google kullanıcı rızası yönetim çözümlerini kullanma başlıklı makaleyi inceleyin.
googlefc.ccpa.getInitialCcpaStatus(): {number}
Kullanıcının ABD eyalet tüzüğü kapsamı dışında kalmayı seçme durumuna bağlı olarak InitialCcpaStatusEnum içinde bir değer döndürür. Bu işlev için belirtilmesi gereken anahtar INITIAL_CCPA_DATA_READY. ABD eyalet yönetmeliği verileriyle ilgili sonraki isteklerin doğrudan GPP API'si (__gpp) çağrılarak alınması gerektiğini unutmayın.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.ccpa = window.googlefc.ccpa || {}
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback on the callbackQueue.
googlefc.callbackQueue.push({
'INITIAL_CCPA_DATA_READY':
() => {
switch (googlefc.ccpa.getInitialCcpaStatus()) {
case googlefc.ccpa.InitialCcpaStatusEnum.CCPA_DOES_NOT_APPLY:
// Insert handling for cases where no US state regulation applies to
// the user.
break;
case googlefc.ccpa.InitialCcpaStatusEnum.NOT_OPTED_OUT:
// Insert handling for cases where a US state regulation applies to
// the user, and the user has not opted out.
break;
case googlefc.ccpa.InitialCcpaStatusEnum.OPTED_OUT:
// Insert handling for cases where a US state regulation applies to the
// user, and the user has opted out.
break;
}
}
});
</script>
googlefc.ccpa.openConfirmationDialog(function(boolean)): {undefined}
Varsayılan "Satmayın" bağlantısı geçersiz kılınırsa ABD eyalet düzenlemeleri kapsamı dışında kalmayı seçme onayı iletişim kutusunu açar. Kullanıcı onay iletişim kutusuyla etkileşime geçtikten sonra,
kullanıcı kapsam dışında kalmayı seçerse sağlanan geri çağırma işlevi true ile, aksi takdirde false ile çağrılır.
Örnek:
<script>
// This callback will be called with the user's US state regulation opt-out
// decision.
const usStateRegCompletionCallback = (userOptedOut) => {
// Insert handling for user opt-out status here.
}
// Invoke the US state regulations confirmation dialog when the user clicks the
// link.
document.getElementById("your-custom-ccpa-do-not-sell-link").addEventListener(
"click", () => googlefc.ccpa.openConfirmationDialog(ccpaCompletionCallback));
</script>
GDPR için IAB TCF 2.0 sürümüyle Google kullanıcı rızası yönetim çözümlerini kullanma
IAB TCF 2.0 çerçevesi kapsamında GDPR izni almak için Google kullanıcı rızası yönetim çözümlerini kullanıyorsanız IAB TCF 2.0 API'yi kullanmanız gerekir.
İlgili geri çağırmaların yalnızca sayfada IAB TCF 2.0 sürümü API'si tanımlandığında çağrılmasını sağlamak için CONSENT_API_READY geri çağırma sırası anahtarını kullanabilirsiniz. Bu, IAB TCF 2.0 API'nin 'addEventListener' komutuyla birlikte kullanılmalıdır.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback using the CONSENT_API_READY key on the callbackQueue.
window.googlefc.callbackQueue.push({
'CONSENT_API_READY':
() => __tcfapi('addEventListener', 2.2, (data, success) => {
// Do something with consent data value; this callback may be invoked
// multiple times as user completes consent flow.
})
});
</script>
İlgili geri çağırmaların yalnızca kullanıcı rızası alındığında ve IAB TCF 2.0 sürümü API'si kullanılarak erişilebilir olduğunda çağrılmasını sağlamak için CONSENT_DATA_READY
geri çağırma sırası anahtarını kullanabilirsiniz.
Bu, 'addEventListener' komutuyla birlikte kullanılabilir. Sağladığınız geri çağırmanın ilk çağrısında sağlanan veriler, kullanıcının izin seçimlerini içerir (TCF 2.0 sürümü bu kullanıcı için geçerli olduğu sürece). TCF 2.2 sürümünün yayınlanmasıyla birlikte 'getTCData' komutunun desteğinin sonlandırıldığını unutmayın.
Örnek:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback using the CONSENT_DATA_READY key on the callbackQueue.
window.googlefc.callbackQueue.push({
'CONSENT_DATA_READY':
() => __tcfapi('addEventListener', 2.2, (data, success) => {
// Do something with consent data value; this callback may be invoked
// multiple times if user consent selections change.
})
});
</script>
AB tüzükleri için izin modu desteği sunan Google kullanıcı rızası yönetim çözümlerini kullanma
Google kullanıcı rızası yönetim çözümleri, kullanıcılarınızın AB tüzükleri kapsamındaki izin tercihlerini Google izin modu için yorumlayabilir (Daha fazla bilgi için Yardım Merkezi'ni ziyaret edin).
İzin modu, Google Ads ve Analytics belgelerinde açıklandığı gibi temel modda veya gelişmiş modda uygulanabilir. Yasal koşullarınızı karşılamak için hangi izin modunu uygulamanız gerektiği konusunda hukuk departmanınıza danışmalısınız.
Gelişmiş izin modu varsayılan olarak desteklenir. Gizlilik ve Mesajlaşma kullanıcı arayüzünde izin modunu etkinleştirdikten sonra başka bir işlem yapmanız gerekmez.
Google kullanıcı rızası yönetim çözümlerini kullanarak temel izin modunu uygulamak için
izin modu verileri kullanılabilir olduğunda Google Ads ve Analytics etiketlerinizi koşullu olarak yüklemek üzere CONSENT_MODE_DATA_READY geri çağırma sırası anahtarını kullanabilirsiniz.
İzin modu verileri, Funding Choices izin modunun bu istek için geçerli olmadığını belirledikten (ör. AB tüzükleri bu istek için geçerli olmadığından) veya bir kullanıcı AB tüzükleri izin kararı verdikten sonra kullanılabilir. İzin modu kullanıma sunulduktan sonra etiketlerinizin yüklenip yüklenemeyeceğini belirlemek için kullanılacak ölçütler konusunda hukuk departmanınıza danışmanız gerekir.
Örneğin, son kullanıcının izin kararından bağımsız olarak izin modu verileri kullanılabilir olduğunda etiketlerinizi yüklemek için:
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Helper function to load Google Ads/Analytics tags once consent mode data is
// ready.
const loadGtagScript = () => {
// Load gtag.js script - code taken from
// https://developers.google.com/tag-platform/security/guides/consent?consentmode=basic#set_up_consent_mode
var gtagScript = document.createElement('script');
gtagScript.async = true;
gtagScript.src = 'https://www.googletagmanager.com/gtag/js?id=<Google tag ID>';
var firstScript = document.getElementsByTagName('script')[0];
firstScript.parentNode.insertBefore(gtagScript,firstScript);
}
// Queue the callback using the CONSENT_MODE_DATA_READY key on the callbackQueue.
window.googlefc.callbackQueue.push({
'CONSENT_MODE_DATA_READY':
() => {
loadGtagScript();
},
});
</script>
İzin modu verileri mevcut olduğunda, her bir izin modu amacının değerlerini almak için googlefc.getGoogleConsentModeValues() API'yi de kullanabilirsiniz.
Bu API, desteklenen her izin modu amacı için bir alan içeren bir GoogleFcConsentModeUserStatus nesnesi döndürür. Her alanın değeri, ilgili izin modu amacının değerini gösteren bir enum değeridir.
Örneğin, Google Ads ve Analytics etiketlerinizin engellemesini yalnızca aşağıdaki durumlarda kaldırmak için googlefc.getGoogleConsentModeValues() kullanabilirsiniz:
- Son kullanıcı, tüm izin modu amaçları için izin verilmesiyle sonuçlanan bir AB tüzükleri izin kararı verdiğinde veya
- Tüm izin modu amaçları mevcut istek için geçerli değilse (AB tüzükleri geçerli değilse veya izin modu, Gizlilik ve Mesajlaşma'da bir ya da daha fazla amaç için yapılandırılmamışsa bu durum ortaya çıkabilir).
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Helper function to determine whether Google Ads and Analytics tags can be
// unblocked. Returns true if all consent mode purposes are set to GRANTED,
// NOT_APPLICABLE, or NOT_CONFIGURED.
const shouldUnblockConsentTags = (googleFcConsentModeStatus) => {
const allConsentModeValues = [
googleFcConsentModeStatus.adStoragePurposeConsentStatus,
googleFcConsentModeStatus.adUserDataPurposeConsentStatus,
googleFcConsentModeStatus.adPersonalizationPurposeConsentStatus,
googleFcConsentModeStatus.analyticsStoragePurposeConsentStatus
];
for (const consentModeValue of allConsentModeValues) {
switch (consentModeValue) {
case googlefc.ConsentModePurposeStatusEnum.CONSENT_MODE_PURPOSE_STATUS_UNKNOWN:
// Indicates either an error case or that consent mode data is not
// ready yet. Cannot unblock tags until consent data is ready and valid,
// so return false.
return false;
case googlefc.ConsentModePurposeStatusEnum.CONSENT_MODE_PURPOSE_STATUS_GRANTED:
// Consent is granted for this consent mode purpose.
break;
case googlefc.ConsentModePurposeStatusEnum.CONSENT_MODE_PURPOSE_STATUS_DENIED:
// Consent is denied for this consent mode purpose. Do not unblock tags.
return false;
case googlefc.ConsentModePurposeStatusEnum.CONSENT_MODE_PURPOSE_STATUS_NOT_APPLICABLE:
// Consent mode does not apply for this purpose.
break;
case googlefc.ConsentModePurposeStatusEnum.CONSENT_MODE_PURPOSE_STATUS_NOT_CONFIGURED:
// Consent mode not configured for this purpose.
// If you configured support for Ads purposes but not Analytics purposes in the
// Privacy & messaging UI, the value of `analyticsStoragePurposeConsentStatus` will
// always be set to NOT_CONFIGURED. If you do not enable any Consent Mode support
// in the Privacy & messaging UI, the values of all purposes will always be set to
// NOT_CONFIGURED.
break;
default:
console.log("Unexpected consent mode value encountered");
}
}
// If all prior checks pass, all consent mode values are either GRANTED,
// NOT_APPLICABLE, or NOT_CONFIGURED.
return true;
};
// Helper function to load Google Ads/Analytics tags.
const loadGtagScript = () => {
// Load gtag.js script - code taken from
// https://developers.google.com/tag-platform/security/guides/consent?consentmode=basic#set_up_consent_mode
var gtagScript = document.createElement('script');
gtagScript.async = true;
gtagScript.src = 'https://www.googletagmanager.com/gtag/js?id=<Google tag ID>';
var firstScript = document.getElementsByTagName('script')[0];
firstScript.parentNode.insertBefore(gtagScript,firstScript);
}
googlefc.callbackQueue.push({
CONSENT_MODE_DATA_READY: () => {
if (shouldUnblockConsentTags(googlefc.getGoogleConsentModeValues())) {
loadGtagScript();
}
},
});
</script>
ABD eyalet yönetmelikleri için IAB GPP çerçevesiyle birlikte Google kullanıcı rızası yönetim çözümlerini kullanma
IAB GPP çerçevesi kapsamında son kullanıcılara ABD eyalet düzenlemeleri kapsam dışında kalmayı seçme mesajları göndermek için Google kullanıcı rızası yönetim çözümlerini kullanıyorsanız IAB GPP API'yi kullanmanız gerekir.
ABD eyalet düzenlemelerinin kapsam dışında kalma niteliği nedeniyle, geri çağırmalar çağrıldığında IAB GPP API'nin çağrılabilir olduğundan ve izni alınan verileri döndürdüğünden emin olmak için CONSENT_API_READY veya CONSENT_DATA_READY geri çağırma sırası anahtarını kullanabilirsiniz.
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Queue the callback on the callbackQueue.
window.googlefc.callbackQueue.push({
'CONSENT_DATA_READY':
() => __gpp('ping', (data, success) => {
// Do something with consent data value.
})
});
</script>
Kendi özel "Satmayın veya Paylaşmayın" bağlantınızla ABD eyalet yönetmelikleri için IAB GPP çerçevesiyle Google kullanıcı rızası yönetim çözümlerini kullanma
IAB GPP çerçevesi kapsamında son kullanıcılara ABD eyalet yönetmelikleri kapsam dışında kalmayı seçme mesajları sunmak için Google kullanıcı rızası yönetim çözümlerini kullanıyorsanız googlefc.usstatesoptout.overrideDnsLink işaretini true olarak ayarlayarak kendi özel "Bilgilerimi Satmayın veya Paylaşmayın" bağlantınızı sağlayabilirsiniz.
<script>
// Make sure that the properties exist on the window.
window.googlefc = window.googlefc || {};
window.googlefc.usstatesoptout = window.googlefc.usstatesoptout || {};
window.googlefc.callbackQueue = window.googlefc.callbackQueue || [];
// Signals that the default DNS link will be overridden.
window.googlefc.usstatesoptout.overrideDnsLink = true;
// Register the callback for the initial US state regulations data.
window.googlefc.callbackQueue.push({
'INITIAL_US_STATES_OPT_OUT_DATA_READY': () => {
if (googlefc.usstatesoptout.getInitialUsStatesOptOutStatus() ===
googlefc.usstatesoptout.InitialUsStatesOptOutStatusEnum.NOT_OPTED_OUT) {
// TODO: Display custom Do Not Sell or Share link here.
}
}
});
</script>
Bu sayede, varsayılan "Bilgilerimi Satmayın veya Paylaşmayın" bağlantısı oluşturulmaz. Ardından, ABD eyalet yönetmelikleri kapsamı dışında kalmayı seçme onay iletişim kutusunu çağırarak kullanıcının özel Satmayın veya Paylaşmayın bağlantınızla etkileşimini işlemeniz gerekir.
Kendi özel Satmayın veya Paylaşmayın bağlantınızı kullanırken bağlantınızın ABD eyalet yönetmeliklerine uygun olmasını sağlamak sizin sorumluluğunuzdadır. Ayrıca, "ABD eyalet yönetmelikleri" mesajlaşma işlevi için kendi özel Satmayın veya Paylaşmayın bağlantınızı kullanma özelliği yalnızca Ad Manager'da desteklenir.
<script>
// This callback will be called when the user makes a US state regulations
// decision.
const usStateRegCompletionCallback = (userOptedOut) => {
if (userOptedOut) {
// TODO: Hide custom Do Not Sell or Share link here.
}
}
// Invoke the US state regulations opt-out confirmation dialog when the user
// clicks the link.
document.getElementById("your-custom-do-not-sell-link").addEventListener(
"click", () => googlefc.usstatesoptout.openConfirmationDialog(usStateRegCompletionCallback));
</script>