Dưới đây là danh sách kiểm tra đã sửa đổi, dựa trên danh sách kiểm tra bảo mật dữ liệu / cài đặt hiện tại (đang thực hiện) của tôi được sử dụng để xem lại Chủ đề (các nguyên tắc không khác nhau đối với Plugin so với Chủ đề):
Các plugin nên thêm tiền tố vào tất cả các tùy chọn, chức năng tùy chỉnh, biến tùy chỉnh và hằng số tùy chỉnh với plugin-slug.
Các plugin nên triển khai các tùy chọn Plugin và các trang Cài đặt plugin một cách có chủ ý, thay vì dựa vào các tập lệnh sao chép và dán từ các hướng dẫn của trang web, chẳng hạn như các tập tin bên dưới, đã lỗi thời và không bao gồm bảo mật dữ liệu phù hợp:
Các plugin nên sử dụng add_options_page()
chức năng để thêm Trang Cài đặt Plugin vào Settings
menu, thay vì sử dụng add_menu_page()
để thêm menu cấp cao nhất.
Các plugin nên sử dụng một khả năng thích hợp (ví dụ manage_options
) cho khả năng thêm trang cài đặt.
Các plugin nên lưu các tùy chọn trong một mảng, thay vì tạo nhiều tùy chọn cho trang cài đặt. Việc sử dụng API Cài đặt (xem bên dưới) sẽ xử lý việc này.
Các plugin nên sử dụng API Cài đặt (xem bên dưới) để nhận và lưu dữ liệu đầu vào của biểu mẫu thay vì dựa vào $_POST
và $_REQUEST
dữ liệu trực tiếp.
Đối với các hộp kiểm và chọn tùy chọn, Plugin nên sử dụng checked()
và các selected()
chức năng để xuất ra checked="checked"
và selected="selected"
, tương ứng.
Các plugin nên xác thực và vệ sinh tất cả dữ liệu không đáng tin cậy trước khi nhập dữ liệu vào cơ sở dữ liệu và phải thoát tất cả dữ liệu không đáng tin cậy trước khi được xuất trong các trường mẫu Cài đặt và trước khi xuất ra trong tệp mẫu Chủ đề:
Các plugin nên sử dụng esc_attr()
cho các kiểu nhập văn bản và esc_html()
(hoặc esc_textarea()
trong WP 3.1) cho các văn bản.
Các plugin nên cung cấp rõ ràng việc kiểm tra nonce trang Cài đặt, nếu không sử dụng API Cài đặt:
Chúng tôi cũng rất khuyến khích các Plugin sử dụng API Cài đặt, dễ sử dụng hơn, an toàn hơn và chăm sóc rất nhiều công việc khó khăn của các trang cài đặt: