איך לחסום סקריפטים עד למתן הסכמה: השוואה בין שלוש שיטות
הבעיה: תגיות שנורות מוקדם מדי
באנר הסכמה עובד רק אם התגיות שמאחוריו מכבדות את בחירת המבקר. הכשל הנפוץ ביותר פשוט: הבאנר מופיע, אך סקריפטים של אנליטיקה ופרסום כבר נטענו והציבו מזהים לפני שמישהו לחץ על משהו. תיקון הבעיה פירושו חסימת סקריפטים עד למתן הסכמה. יש שלוש דרכים מעשיות לעשות זאת.
שיטה 1: שכתוב סוג הסקריפט
דפדפנים מריצים אלמנט script רק כאשר הסוג שלו הוא סוג של JavaScript. אם משנים את הסוג ל-text/plain, הדפדפן מתעלם מהסקריפט. לאחר מכן מוסיפים מאפיין data שרושם לאיזו קטגוריית הסכמה הסקריפט שייך:
- שנו את
type="text/javascript"ל-type="text/plain". - הוסיפו מאפיין כמו
data-category="analytics". - כשהמבקר מסכים לקטגוריה הזו, טוען קטן מחזיר את הסוג ומוסיף את הסקריפט כדי שירוץ.
מתאים ל: קומץ סקריפטים מוכרים, מוטמעים או חיצוניים, בתבניות שלכם. שימו לב ל: סקריפטים שמוזרקים על ידי סקריפטים אחרים, שאינם עוברים דרך התבניות שלכם ולכן אינם משוכתבים לעולם.
שיטה 2: שליטה בתגיות דרך מנהל תגיות
אם התגיות שלכם נמצאות ב-Google Tag Manager או בכלי דומה, אפשר להשאיר את הקונטיינר בעמוד ולשלוט בהפעלה באמצעות טריגרים שמודעים להסכמה. לכל תגית ניתנת דרישת הסכמה, ומנהל התגיות מפעיל אותה רק כשמצב ההסכמה המתאים ניתן. היתרון הגדול הוא שליטה מרכזית: השיווק יכול להוסיף תגיות בלי לגעת בתבניות, והכלל נע יחד עם התגית.
מתאים ל: אתרים עם תגיות שיווק רבות. שימו לב ל: סקריפטים שנכתבו ישירות בקוד מחוץ לקונטיינר, ותגיות HTML מותאמות שטוענות בעצמן סקריפטים נוספים.
שיטה 3: טעינת סקריפטים דינמית בעת הסכמה
כאן מסירים את תגיות ה-script מהעמוד לחלוטין וכותבים פונקציה שמזריקה אותן רק לאחר אירוע הסכמה. זו האפשרות הנקייה ביותר עבור אפליקציות עמוד יחיד ומפתחים שרוצים שליטה מלאה:
- האזינו לקריאה החוזרת של ההסכמה מה-CMP שלכם.
- בדקו אילו קטגוריות אושרו.
- צרו אלמנט script, הגדירו את המקור שלו והוסיפו אותו למסמך.
- הריצו כל קוד אתחול במטפל ה-load של הסקריפט.
מתאים ל: אפליקציות מודרניות עם שלב build. שימו לב ל: שכחה של מבקר חוזר; הבחירה השמורה שלו חייבת להפעיל טעינה בעת טעינת העמוד בלי לחיצה חדשה.
טיפול בביטול הסכמה
חסימה לפני הסכמה היא חצי מהעבודה. אם מבקר מבטל את הסכמתו מאוחר יותר, הפסיקו לקרוא לכלים והבטיחו שהם לא ממשיכים לקרוא או לכתוב מזהים. הסרת סקריפט מהעמוד אינה מסירה קוד שכבר נמצא בזיכרון, ולכן טעינה מחדש לאחר הביטול היא לרוב הגישה האמינה הפשוטה ביותר.
במה לבחור?
- מעט סקריפטים, תבניות שמרונדרות בשרת: שיטה 1.
- תגיות שיווק רבות שאנשים שאינם מפתחים עורכים: שיטה 2.
- אפליקציית עמוד יחיד או פרונטאנד ייעודי: שיטה 3.
- מערכות מעורבות משלבות לרוב שתיים מהן. רק ודאו שאף תגית לא נשארת מחוץ לכיסוי של שתיהן.
איך בודקים
- פתחו חלון פרטי לאחר ניקוי המטמון.
- פתחו את כלי המפתחים של הדפדפן בלשוניות Network ו-Application לפני טעינת העמוד.
- טענו את העמוד ואל תיגעו בבאנר. ודאו שלא נשלחות בקשות אנליטיקה או פרסום ושלא מופיעות עוגיות או רשומות אחסון קשורות.
- אשרו קטגוריה אחת בלבד וודאו שנטענים רק הסקריפטים המתאימים.
- דחו הכול, טענו מחדש וחזרו על הבדיקה הראשונה.
- בטלו את ההסכמה ובדקו את ההתנהגות שתוארה לעיל.
היכן FlexyConsent משתלב
FlexyConsent תומך ב-IAB TCF 2.4 וב-Google Consent Mode v2, והוא CMP מאושר של Google (CMP ID 317). לא משנה באיזו שיטת חסימה תבחרו, תפקיד הבאנר הוא לתת לקוד שלכם אות ברור לגבי מה שהמבקר בחר. תפקידכם הוא לוודא שכל סקריפט מציית לו.
נקודות מפתח
- סקריפטים שנטענים לפני שהמבקר בוחר מאיינים את מטרת הבאנר.
- שכתוב סוג, טריגרים במנהל תגיות וטעינה דינמית מתאימים כל אחד לסוג אחר של אתר.
- סקריפטים שמוזרקים על ידי סקריפטים אחרים הם הדליפה הנפוצה ביותר.
- טפלו במבקרים חוזרים ובביטול הסכמה, לא רק בביקור הראשון.
- בדקו בחלון פרטי נקי עם כלי מפתחים פתוחים לפני שאתם נוגעים בבאנר.