Intereting Posts

Кто отвечает за санацию данных в разработке WordPress?

Я изучаю, как писать более безопасный код WordPress, внедряя валидацию, санитацию и утечку данных везде, где это необходимо. Валидация и побег имеют прекрасный смысл, но я немного запутался в санитарии.

Если я использую такую ​​функцию, как add_post_meta , выполняет ли эта функция для меня санитария? Как насчет set_option или других, которые взаимодействуют с базой данных. Этими функциями я обычно взаимодействую с базой данных. В каких ситуациях мне нужно беспокоиться о санитации?

Да, WordPress будет дезинфицировать данные на пути к базе данных, если вы используете API.

Если вы используете объект wpdb вам нужно будет использовать метод prepare для дезинфекции. Я рекомендую против написания SQL-запросов, поскольку он обходит кэши объектов и т. Д., Но если вы должны написать свой собственный SQL, используйте wpdb для его подготовки и выполнения

Для таких вызовов, как WP_Query , get_posts , add_post_meta т. Д. И т.д.

Обратите внимание, что это чисто суффикс БД, любая дополнительная санитария или валидация, которую вы требуете, такие как обрезка конечных пробелов, проверка URL-адресов, удаление дескрипторов, экранирование и т. Д., Должны быть выполнены в вашем коде