Fix lỗi nâng cấp ACF bị hiện script mã nhúng ra từ phiên bản ACF 6.2.5
Từ phiên bản 6.2.5, team phát triển đã quyết định sẽ sanitize toàn bộ dữ liệu sử dụng hàm the_field()
để hạn chế các cuộc tấn công, nên các mã thẻ script nhúng Google Tag Manager sẽ không thể hiển thị chính xác.
Thông tin bản nâng cấp ACF 6.2.5 có thể xem tại đây.
Escape HTML trong dữ liệu nhập
Một điểm đáng chú ý là các dữ liệu mặc định sẽ bị escape HTML tag. Điều này ảnh hưởng ra sao? Nhiều giao diện viết code tay thuần sử dụng ACF thường cho phép admin nhập liệu các script theo dõi tracking GA, GTM, FB Pixel hay các mã live chat miễn phí thông qua mục field textarea.
Nhưng khi bản nâng cấp ACF 6.2.5 được áp dụng trên web, bạn sẽ thấy các mã script bị out ra khỏi như thế này:
Điều này do tính bảo mật của plugin đã được nâng cấp để không cho phép nhập HTML tag nữa.
Cách khắc phục lỗi này
Cách 1: Cài các plugin nhúng mã script chuyên biệt
Cách 2: Can thiệp để filter cho phép accept các script/style.
Để tuỳ biến các thiết lập mặc định này, bạn có thể can thiệp qua 1 số hook:
wp_kses_allowed_html
safe_style_css
Xem chi tiết tại đây.