Cách vệ sinh an toàn một vùng văn bản có đầu vào HTML đầy đủ


9

Tôi đang phát triển một plugin cho phép người dùng gửi email HTML từ trong quản trị viên WordPress. Làm thế nào tôi nên vệ sinh đầu vào textarea? Nó phải có khả năng chứa toàn bộ phạm vi các thẻ HTML có thể xuất hiện trong email HTML. Nếu tôi sử dụng wp_kses()thì tôi sẽ phải sử dụng một danh sách lớn các thẻ được phép.

Textarea lưu nội dung của nó vào db thông qua các tùy chọn tùy chỉnh.

Câu trả lời:


14

Đã có một danh sách khổng lồ được xây dựng cho bạn , có thể được trả về wp_kses_allowed_html()dựa trên ngữ cảnh và được lọc qua wp_kses_allowed_htmlbộ lọc, theo ngữ cảnh. Tạo danh sách đó không nên khó.

Tuy nhiên, "toàn bộ phạm vi thẻ HTML có thể xuất hiện trong email HTML" phải khá gần với phạm vi được phép cho một bài đăng thông thường, do đó, wp_kses_post()phải giúp bạn đi một chặng đường dài với ít nỗ lực.


Vâng, đó là một danh sách lớn. Vì vậy, tôi chỉ nhập dữ liệu đó làm tham số sau đó thêm các tính năng bổ sung tôi cần, thích <html><body>v.v.
tommyf

Có, nếu bạn cần người dùng của mình bao gồm nhiều đánh dấu đó. Tôi sẽ tạo ra phần đó cho họ, nếu đó là tôi.
s_ha_dum
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.