Melihat Codex untuk wp_insert_post () itu menyatakan bahwa fungsi ini "... membersihkan variabel, melakukan beberapa pemeriksaan, mengisi variabel yang hilang seperti tanggal / waktu, dll." (EDIT: Saya memperbarui entri Codex untuk memasukkan contoh yang lebih kuat. itu termasuk keamanan serta penugasan meta dan kategori)
Hanya ingin tahu apakah saya perlu melakukan sanitasi lebih lanjut untuk mencegah peretasan XSS dan sejenisnya atau apakah cukup dilakukan melalui fungsi.
Sejujurnya, saya telah memeriksa fungsi pada intinya dan belum menemukan wp_kses () atau sanitasi lain pada post_content misalnya, jadi saya sedikit khawatir. Yang bisa saya lihat adalah stripslashes_deep () pada data.
Jadi saya harus menjalankan wp_kses () atau apa pun ketika saya membangun argumen saya ke wp_insert_post ()?
Apa praktik terbaik di sini? Codex cukup angkuh tentang keamanan dalam contohnya.
Terima kasih
sumber
<script>
di dalamnya?Jawaban:
Anda tidak perlu melakukan apa pun.
Pada WP load:
'init' hook -> kses_init() -> kses_init_filters()
Kemudian:
wp_insert_post() -> sanitize_post() -> sanitize_post_field() -> 'content_save_pre' -> wp_filter_post_kses()
Demikian pula untuk judul posting, teks komentar, dll.
Kesimpulan: wp_insert_post () sangat bersih. :)
sumber