מבוא
ה-API הזה מספק כלים לאינטראקציה עם ההודעות שבכרטיסייה 'פרטיות והודעות'. איתו אפשר:
- ביטול הודעות לכל משתמש נתון
- שליחת שאילתה לגבי סטטוס חסימת המודעות של משתמש
- לאפשר למשתמש לבטל את ההסכמה (אם רלוונטי)
אפשר גם להשתמש בכלים הבאים כדי לאסוף אישורי הסכמה מהמשתמשים באמצעות פרוטוקולים מסוימים המקובלים בתחום:
- הסכמה בהתאם ל-GDPR באמצעות המפרט של IAB TCF בגרסה 2
- ביטול ההסכמה ל-CPRA באמצעות מפרט ה-CPRA של IAB GPP
במקרים כאלה, סטטוס ההסכמה מועבר באמצעות ממשקי ה-API האלה.
אפשר לפרוס באתר שלכם את הפונקציונליות הזו של העברת הודעות למשתמשים בשתי דרכים:
- ברוב המקרים אין צורך בתיוג מחדש – תג Google Publisher הקיים או תג AdSense פורס את ההודעות למשתמשים אחרי פרסום ההודעה במוצר הרלוונטי.
- אם אתם משתמשים בהודעה למשתמשים עם חסימת מודעות, עליכם להוסיף לדף את התג לחסימת מודעות באופן מפורש. למידע נוסף, ראו Ad Manager ו-AdSense הוראות לתיוג.
googlefc
הוא מרחב השמות הגלובלי שבו הפונקציונליות של העברת ההודעות למשתמשים משתמשת ב-API שלה ב-Window
של JavaScript.
סיכומי שדות
שם | סוג | הגדרה |
---|---|---|
googlefc.controlledMessagingFunction
|
function(!Object) | פונקציה שקובעת אם להמשיך בהעברת הודעות. הפונקציונליות הזו נתמכת בכל סוגי ההודעות. |
googlefc.callbackQueue
|
!Array<!Object<string, function()>> | !Array<function()> | !googlefc.CallbackQueue | הפניה לתור להתקשרות חזרה להפעלה אסינכרונית של שאילתות להעברת הודעות משתמשים. |
googlefc.CallbackQueue
|
!Object | סוג האובייקט של תור הקריאה החוזרת (callback). |
googlefc.AdBlockerStatusEnum
|
!Object<string, number> | 'טיפוסים בני מנייה (enum)' לייצוג מצב חסימת המודעות של המשתמש. |
googlefc.AllowAdsStatusEnum
|
!Object<string, number> | 'טיפוסים בני מנייה (enum)' שמייצג את מצב הצגת המודעות של המשתמש. |
googlefc.ccpa.InitialCcpaStatusEnum
|
!Object<string, number> | 'טיפוסים בני מנייה (enum)' שמייצג את הסטטוס הראשוני של ה-CPRA של המשתמש. |
googlefc.ccpa.overrideDnsLink
|
undefined|boolean | ערך בוליאני שאפשר להגדיר כ-true כדי להשתמש בקישור 'לא למכירה' בהתאמה אישית. |
סיכומי שיטה
שם | סוג הערך שמוחזר | הגדרה |
---|---|---|
googlefc.showRevocationMessage()
|
undefined |
יתבצע ניקוי של רשומת ההסכמה וטעינה מחדש של הסקריפט googlefc כדי להציג את ההודעה בנושא הסכמה שרלוונטית למשתמש.
|
googlefc.getAdBlockerStatus()
|
number |
מחזירה ערך ב-AdBlockerStatusEnum בהתאם לסטטוס חסימת המודעות של המשתמש.
|
googlefc.getAllowAdsStatus()
|
number |
מחזירה ערך ב-AllowAdsStatusEnum בהתאם לסטטוס 'התרת מודעות' של המשתמש.
|
googlefc.ccpa.getInitialCcpaStatus()
|
number |
מחזירה ערך ב-InitialCcpaStatusEnum בהתאם לסטטוס ה-CPRA הראשוני של המשתמש.
|
googlefc.ccpa.openConfirmationDialog(function(boolean))
|
undefined | אם ביטלתם את הקישור 'לא למכירה' שמוגדר כברירת מחדל, תיפתח תיבת הדו-שיח לאישור לפי חוק CPRA. |
בדיקה וניפוי באגים באתר
הכלי 'פרטיות והודעות' מספק פונקציונליות של ניפוי באגים ובדיקה שמאפשרת לראות איך הודעות ספציפיות (או שילובי הודעות) נראות באתר שלכם בפועל.
דרישות מוקדמות:
- ההודעות שרוצים לראות בתצוגה מקדימה חייבות להתפרסם באתר שבודקים
אפשר לראות תצוגה מקדימה בזמן אמת באתר באמצעות הפרמטרים הבאים של כתובות URL לניפוי באגים:
פרמטר של ניפוי באגים | ערכים מותרים |
---|---|
fc |
alwaysshow (כדי להפעיל מצב ניפוי באגים/תצוגה מקדימה) |
fctype |
ab (הודעות בנושא חסימת מודעות), ccpa (הודעות לביטול הסכמה ל-CPRA), gdpr (הודעות בנושא הסכמה ל-GDPR), monetization (הודעות Offerwall) |
כמה דוגמאות לאופן שבו אפשר להציג תצוגה מקדימה באתר שלכם (foo.com):
- בדיקה של הודעת ה-CPRA –
http://foo.com/?fc=alwaysshow&fctype=ccpa
- בדיקה של הודעת ה-GDPR –
http://foo.com/?fc=alwaysshow&fctype=gdpr
שדות: הסברים ודוגמאות
googlefc.controlledMessagingFunction {function(!Object)}
פונקציה שקובעת אם הודעות יוצגו או לא. אפשר להשתמש בו כדי להגביל רינדור של הודעות בתנאים שצוינו על ידי בעל התוכן הדיגיטלי, כמו סטטוס המנוי או כתובת ה-URL של הדף.
כשמגדירים את השדה googlefc.controlledMessagingFunction
בחלון, לפני שסקריפטים אחרים נטענות, ההודעות לא מוצגות עד שמפעילים את message.proceed(boolean)
. הקריאה ל-message.proceed(true)
מאפשרת לשלוח הודעות כרגיל, בעוד שהקריאה ל-message.proceed(false)
מונעת מההודעות להופיע במהלך הצפייה בדף.
דוגמה: נניח שיש לכם בדף את הסקריפט הזה שמגדיר פונקציית אסינכרונית determineIfUserIsSubscriber()
שבודקת אם המשתמש המחובר הוא מנוי.
<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>
זוהי דוגמה לאופן שבו אפשר להשתמש ב-googlefc.controlledMessagingFunction
כדי להציג את ההודעה רק למשתמשים שאינם מנויים.
<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>
יש גם תוסף של התכונה הזו, שמאפשר לבעלי אפליקציות כחלק מגרסת הבטא הסגורה של Offerwall לציין שצריך לבטל רק את הודעת ה-Offerwall. סוגים אחרים של הודעות לא מושפעים כשהתכונה הזו פועלת.
כדי לקבל הודעות מבוקרות ספציפיות ל-Offerwall, צריך להעביר פרמטר נוסף אל message.proceed()
, Array
מסוג googlefc.MessageTypeEnum
.
דוגמה: דוגמה לשימוש ב-googlefc.controlledMessagingFunction
כדי להסתיר רק את הצגת הודעת ה-Offerwall למנויים, בלי להסתיר סוגי הודעות אחרים:
<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>
הפניה לתור הגלובלי להתקשרות חזרה לביצוע אסינכרוני של קריאות שקשורות להעברת הודעות. הדרך הנתמכת היחידה להפעיל פונקציה היא להוסיף אותה ל-callbackQueue
.
סוגים שונים של נתונים הופכים לזמינים בזמנים שונים, לכן צריך להוסיף פונקציה כמפה, כשאחת מהמחרוזות הבאות היא המפתח, ואת הפונקציה שצריך לבצע בתור הערך.
מפתחות נתמכים:
שם מפתח | Usage | זמן אחזור יחסי |
---|---|---|
CONSENT_API_READY
|
פונקציות שנדחפו לתור הקריאה החוזרת באמצעות המפתח CONSENT_API_READY מבוצעות כשממשקי ה-API עבור מסגרות הסכמה נתמכות מוגדרים ואפשר להפעיל אותן. מנקודה זו ואילך, הביצוע של פונקציות עם קידוד מ-CONSENT_API_READY שיתווספו לאחר מכן הוא סינכרוני. לקבלת פרטים ספציפיים למסגרת, אפשר לעיין בקטעים על מסגרות של IAB.
|
נמוך |
CONSENT_DATA_READY
|
פונקציות שנדחפו לתור הקריאה החוזרת באמצעות המפתח CONSENT_DATA_READY מבוצעות כשידועה ההסכמה של המשתמש שנאספה במסגרת מסגרת הסכמה נתמכת (מביצוע קודם או לאחר אינטראקציה של המשתמש עם ההודעה בנושא הסכמה). מנקודה זו ואילך, הביצוע של פונקציות עם קידוד מ-CONSENT_DATA_READY שיתווספו לאחר מכן הוא סינכרוני.
|
גבוה |
AD_BLOCK_DATA_READY
|
פונקציות שנדחפו לתור הקריאה החוזרת באמצעות המפתח AD_BLOCK_DATA_READY מתבצעות כשנתונים לגבי חסימת מודעות הופכים לזמינים בתהליך. מנקודה זו ואילך, הביצוע של פונקציות עם קידוד מ-AD_BLOCK_DATA_READY שיתווספו לאחר מכן הוא סינכרוני.
|
גבוה |
INITIAL_CCPA_DATA_READY
|
פונקציות שנדחפו לתור הקריאה החוזרת עם ה-INITIAL_CCPA_DATA_READY מבוצעות כשנתוני CPRA הופכים לזמינים בתהליך. הערה: כדי לשלוח בקשה נוספת לנתוני CPRA, צריך לקרוא ישירות ל-US Privacy API (__uspapi ).
|
אמצעי הגעה לאתר |
googlefc.CallbackQueue {!Object}
סיכום השיטה:
שם | סוג | פרמטר | סוג הערך שמוחזר | תפקיד |
---|---|---|---|---|
push(data)
|
number |
data : צמד מפתח/ערך עם המפתח כאחד מסוגי הזמינות של הנתונים, והערך כפונקציית JavaScript שצריך להריץ.
המפתחות הקבילים לזמינות הנתונים הם CONSENT_API_READY ,
CONSENT_DATA_READY , AD_BLOCK_DATA_READY ו-
INITIAL_CCPA_DATA_READY .
|
מספר הפקודות שנוספו עד כה. פעולה זו מחזירה את האורך הנוכחי של המערך. | מפעילה את הפונקציה שהועברה, לפי הסדר שבו הנתונים הופכים לזמינים, ואז לפי הסדר שבו הפונקציות נוספו לתור. |
דוגמה:
<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({
'AD_BLOCK_DATA_READY':
() => {
if (googlefc.getAdBlockerStatus() == googlefc.AdBlockerStatusEnum.NO_AD_BLOCKER) {
// Handle a non-ad blocking user.
}
}
});
</script>
googlefc.AdBlockerStatusEnum {!Object<string, number>}
זהו המצבים השונים של חסימת מודעות של המשתמש. המצבים השונים הם:
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>}
המדד הזה מייצג את המצבים השונים של המשתמשים שהפעילו חסימת מודעות. המצבים השונים הם:
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.ccpa.InitialCcpaStatusEnum{!Object<string, number>}
המדד הזה מייצג את המצבים השונים של המשתמשים שהפעילו חסימת מודעות. המצבים השונים הם:
googlefc.ccpa.InitialCcpaStatusEnum = {
// Something failed, in an unknown state.
UNKNOWN: 0,
// CPRA does not apply to this user.
CCPA_DOES_NOT_APPLY: 1,
// CPPA applies to this user, and the user has not opted out yet.
NOT_OPTED_OUT: 2,
// CPPA applies to this user, and the user has opted out.
OPTED_OUT: 3,
};
googlefc.ccpa.overrideDnsLink{undefined|boolean}
צריך להגדיר את השדה הזה כ-True כדי להסתיר את קישור ברירת המחדל 'לא למכור' ולהשתמש בקישור בהתאמה אישית 'לא למכירה'.
דוגמה:
<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>
שיטות: הסברים ודוגמאות
googlefc.getConsentStatus(): {number}
googlefc.getConsentedProviderIds(): {!Array<string>}
- פעולה זו תחזיר תמיד רשימה ריקה כאשר היא תקרא.
googlefc.showRevocationMessage(): {undefined}
ניקוי רשומת ההסכמה הנוכחית והצגת ההודעה בנושא הסכמה שחלה על המשתמש. המפתח שצריך לציין בפונקציה הזו הוא CONSENT_DATA_READY
.
דוגמה:
<button type="button" onclick="googlefc.callbackQueue.push({'CONSENT_DATA_READY': () => googlefc.showRevocationMessage()});">
Click here to revoke
</button>
googlefc.getAdBlockerStatus(): {number}
מחזירה ערך ב-AdBlockerStatusEnum בהתאם לסטטוס חסימת המודעות של המשתמש. המפתח שצריך לציין בפונקציה הזו הוא AD_BLOCK_DATA_READY
.
דוגמה:
<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({
'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}
מחזירה ערך ב-AllowAdsStatusEnum
בהתאם לסטטוס ההרשאות של הצגת מודעות
של המשתמש. המפתח שצריך לציין בפונקציה הזו הוא AD_BLOCK_DATA_READY
.
דוגמה:
<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({
'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.ccpa.getInitialCcpaStatus(): {number}
הפונקציה מחזירה ערך ב-InitialCcpaStatusEnum
בהתאם לסטטוס ה-CPRA של המשתמש. המפתח שצריך לציין בפונקציה הזו הוא INITIAL_CCPA_DATA_READY
. הערה: כל בקשה לאחר מכן לנתוני CPRA צריך לקבל קריאה ישירה ל-US Privacy API (__uspapi
).
דוגמה:
<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 the user is not CPRA eligible.
break;
case googlefc.ccpa.InitialCcpaStatusEnum.NOT_OPTED_OUT:
// Insert handling for cases where the user is CPRA eligible and has
// not opted out.
break;
case googlefc.ccpa.InitialCcpaStatusEnum.OPTED_OUT:
// Insert handling for cases where the user is CPRA eligible and has
// opted out.
break;
}
}
});
</script>
googlefc.ccpa.openConfirmationDialog(function(boolean)): {undefined}
אם הקישור 'לא למכירה' בוטל, תיפתח תיבת הדו-שיח לאישור לפי CPRA. אחרי שהמשתמש יוצר אינטראקציה עם תיבת הדו-שיח לאישור, פונקציית הקריאה החוזרת שסופקה מופעלת באמצעות true
אם המשתמש מחליט לבטל את ההסכמה. אחרת, פונקציית הקריאה החוזרת (callback) false
.
דוגמה:
<script>
// This callback will be called with the user CPRA decision.
const ccpaCompletionCallback = (userOptedOut) => {
// Insert handling for user opt-out status here.
}
// Invoke the CPRA confirmation dialog when the user clicks the link.
document.getElementById("your-custom-ccpa-do-not-sell-link").addEventListener(
"click", () => googlefc.ccpa.openConfirmationDialog(ccpaCompletionCallback));
</script>
שימוש בפתרונות של Google לניהול הסכמה עם TCF גרסה 2 של IAB בהתאם ל-GDPR
אם אתם משתמשים בפתרונות של Google לניהול הסכמה כדי לאסוף אישורי הסכמה ל-GDPR במסגרת TCF גרסה 2 של IAB, עליכם להשתמש ב-API של TCF גרסה 2 של IAB.
אפשר להשתמש במפתח תור הקריאה החוזרת (callback) CONSENT_API_READY
כדי להבטיח שהקריאות החוזרות (callback) התואמות יופעלו רק כש-IAB TCF v2 API מוגדר בדף. צריך להשתמש באפשרות הזו בשילוב עם הפקודה 'addEventListener'
של IAB TCF v2 API.
דוגמה:
<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>
תוכלו להשתמש במפתח התור להתקשרות חזרה של CONSENT_DATA_READY
כדי להבטיח שהקריאות החוזרות (callback) התואמות יופעלו רק כשאיסוף הנתונים על הסכמת המשתמש ייאסף ויהיה נגיש באמצעות TCF גרסה 2 של IAB.
אפשר להשתמש בפקודה הזו יחד עם הפקודה 'addEventListener'
– הנתונים שסופקו בהפעלה הראשונה של הקריאה החוזרת (callback) שתציינו יכללו את הבחירות של המשתמש בנוגע להסכמה (כל עוד גרסה 2 של TCF חלה על המשתמש הזה). שימו לב שבעקבות ההשקה של גרסה 2.2 של TCF, הפקודה 'getTCData'
הוצאה משימוש.
דוגמה:
<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>
שימוש בפתרונות של Google לניהול הסכמה עם מסגרת GPP של IAB בנושא CPRA
אם אתם משתמשים בפתרונות של Google לניהול הסכמה כדי לאסוף ביטול הסכמה ל-CPRA במסגרת ה-GPP של IAB, כדאי לכם להשתמש ב-IAB GPP API.
תקנות ה-CPRA לא מאפשרות ביטול הסכמה, ולכן אפשר להשתמש במפתח התור לקריאה חוזרת (callback) ב-CONSENT_API_READY
או ב-CONSENT_DATA_READY
כדי לוודא שניתן לקרוא ל-GPP API של IAB ולהחזיר את נתוני ההסכמה בזמן ההפעלה של הקריאה החוזרת (callback).
<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.
window.googlefc.callbackQueue.push({
'CONSENT_DATA_READY':
() => __uspapi('getUSPData', 1, (data, success) => {
// Do something with consent data value.
})
});
</script>
שימוש בפתרונות של Google לניהול הסכמה עם מסגרת ה-GPP של IAB בנושא CPRA עם קישור מותאם אישית בנושא 'לא למכירה'
אם אתם משתמשים בפתרונות של Google לניהול הסכמה כדי לאסוף ביטול הסכמה ל-CPRA במסגרת ה-GPP של IAB, יש לכם אפשרות לספק קישור מותאם אישית בנושא 'לא למכירה' על ידי הגדרת הדגל googlefc.ccpa.overrideDnsLink
לערך true
.
<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 || [];
// Signals that the default DNS link will be overridden.
window.googlefc.ccpa.overrideDnsLink = true;
// Register the callback for the initial CPRA data.
window.googlefc.callbackQueue.push({
'INITIAL_CCPA_DATA_READY': () => {
if (googlefc.ccpa.getInitialCcpaStatus() ===
googlefc.ccpa.InitialCcpaStatusEnum.NOT_OPTED_OUT) {
// TODO: Display custom CPRA Do Not Sell link here.
}
}
});
</script>
כך אפשר לוודא שהקישור 'לא למכירה' שמוגדר כברירת מחדל לא מעובד. שימו לב: באחריותך ליצור קישור 'לא למכירה' משלך כדי לעמוד בדרישות של CPRA. לאחר מכן, צריך לטפל באינטראקציה של המשתמש עם הקישור המותאם אישית 'לא למכור' על ידי הפעלת תיבת הדו-שיח לאישור של חוק CPRA.
<script>
// This callback will be called with the user CPRA decision.
const ccpaCompletionCallback = (userOptedOut) => {
if (userOptedOut) {
// TODO: Hide custom CPRA Do Not Sell link here.
}
}
// Invoke the CPRA confirmation dialog when the user clicks the link.
document.getElementById("your-custom-ccpa-do-not-sell-link").addEventListener(
"click", () => googlefc.ccpa.openConfirmationDialog(ccpaCompletionCallback));
</script>