Cách chặn script cho đến khi có sự đồng ý: So sánh ba phương pháp

Vấn đề: Thẻ kích hoạt quá sớm

Biểu ngữ đồng ý chỉ hiệu quả khi các thẻ đằng sau nó tôn trọng lựa chọn của khách truy cập. Lỗi phổ biến nhất rất đơn giản: biểu ngữ xuất hiện, nhưng các script phân tích và quảng cáo đã tải và đặt mã định danh trước khi ai đó nhấp vào bất cứ thứ gì. Khắc phục điều đó nghĩa là chặn script cho đến khi có sự đồng ý. Có ba cách thực tế để làm.

Phương pháp 1: Viết lại type của script

Trình duyệt chỉ thực thi phần tử script khi type của nó là một kiểu JavaScript. Nếu bạn đổi type thành text/plain, trình duyệt sẽ bỏ qua script đó. Sau đó bạn thêm một thuộc tính dữ liệu ghi lại script thuộc danh mục đồng ý nào:

Phù hợp với: một số ít script nội tuyến hoặc bên ngoài đã biết trong các mẫu của bạn. Cần lưu ý: các script do script khác chèn vào không đi qua mẫu của bạn nên không bao giờ được viết lại.

Phương pháp 2: Kiểm soát thẻ trong trình quản lý thẻ

Nếu các thẻ của bạn nằm trong Google Tag Manager hoặc công cụ tương tự, bạn có thể để container trên trang và kiểm soát việc kích hoạt bằng các trình kích hoạt nhận biết sự đồng ý. Mỗi thẻ được gán một yêu cầu đồng ý, và trình quản lý thẻ chỉ kích hoạt nó khi trạng thái đồng ý tương ứng được cấp. Lợi thế lớn là kiểm soát tập trung: bộ phận marketing có thể thêm thẻ mà không đụng đến mẫu, và quy tắc đi kèm với thẻ.

Phù hợp với: các trang web có nhiều thẻ marketing. Cần lưu ý: các script được viết cứng nằm ngoài container, và các thẻ HTML tùy chỉnh tự tải thêm script khác.

Phương pháp 3: Tải script động khi có sự đồng ý

Ở đây bạn loại bỏ hoàn toàn các thẻ script khỏi trang và viết một hàm chỉ chèn chúng sau một sự kiện đồng ý. Đây là lựa chọn gọn gàng nhất cho các ứng dụng một trang và cho nhà phát triển muốn toàn quyền kiểm soát:

  1. Lắng nghe callback đồng ý từ CMP của bạn.
  2. Kiểm tra những danh mục nào đã được cấp.
  3. Tạo một phần tử script, đặt nguồn của nó và nối vào tài liệu.
  4. Chạy mọi mã khởi tạo trong trình xử lý load của script.

Phù hợp với: các ứng dụng hiện đại có bước build. Cần lưu ý: quên xử lý khách truy cập quay lại, người có lựa chọn đã lưu phải kích hoạt việc tải khi trang tải mà không cần nhấp lại.

Xử lý việc rút lại đồng ý

Chặn trước khi có đồng ý mới chỉ là một nửa công việc. Nếu khách truy cập sau đó rút lại đồng ý, hãy ngừng gọi các công cụ và đảm bảo chúng không tiếp tục đọc hoặc ghi mã định danh. Việc xóa script khỏi trang không xóa mã đã nằm trong bộ nhớ, nên tải lại trang sau khi rút đồng ý thường là cách đơn giản và đáng tin cậy nhất.

Bạn nên chọn phương pháp nào?

Cách kiểm thử

  1. Mở một cửa sổ riêng tư đã xóa bộ nhớ đệm.
  2. Mở công cụ dành cho nhà phát triển của trình duyệt ở các tab Network và Application trước khi tải trang.
  3. Tải trang và không chạm vào biểu ngữ. Xác nhận không có yêu cầu phân tích hay quảng cáo nào được gửi và không có cookie hoặc mục lưu trữ liên quan xuất hiện.
  4. Chỉ chấp nhận một danh mục và xác nhận chỉ các script tương ứng được tải.
  5. Từ chối tất cả, tải lại và lặp lại bước kiểm tra đầu tiên.
  6. Rút lại đồng ý và xác minh hành vi đã mô tả ở trên.

FlexyConsent nằm ở đâu

FlexyConsent hỗ trợ IAB TCF 2.4 và Google Consent Mode v2, và là CMP được Google chứng nhận (CMP ID 317). Dù bạn chọn phương pháp chặn nào, nhiệm vụ của biểu ngữ là cung cấp cho mã của bạn một tín hiệu rõ ràng về điều khách truy cập đã chọn. Nhiệm vụ của bạn là đảm bảo mọi script đều tuân theo tín hiệu đó.

Những điểm chính

← Blog Đọc tất cả →