Функция sanitize_option()
в WordPress используется для очистки значений различных опций на основе их типа. Это особенно важно для обеспечения безопасности и корректности данных, хранящихся в базе данных.
sanitize_option( string $option, mixed $value ): mixed
Параметры функции
- $option (строка, обязательный): Имя опции, которую необходимо очистить. Например:
admin_email
,blogname
,thumbnail_size_w
и другие. - $value (смешанный, обязательный): Значение, которое подлежит очистке.
Возвращаемое значение
Функция возвращает очищенное значение опции, которое готово к безопасному использованию.
Пример 1: Очистка электронной почты администратора
Давайте посмотрим, как очистить адрес электронной почты администратора:
$admin_email = sanitize_option('admin_email', 'admin @ example.com');
echo $admin_email; // вывод: admin@example.com
В этом примере функция удаляет лишние пробелы и недопустимые символы, чтобы получить корректный адрес электронной почты.
Пример 2: Очистка размера миниатюры
Очистим значение, представляющее размер миниатюры:
$thumbnail_size_width = sanitize_option('thumbnail_size_w', '150px');
echo $thumbnail_size_width; // вывод: 150
Функция преобразует строку, содержащую размер в пикселях, в целочисленное значение.
Пример 3: Очистка имени блога
Очистка имени блога для защиты от HTML-тегов:
$blog_name = sanitize_option('blogname', 'Мой <b>крутой</b> блог');
echo $blog_name; // вывод: Мой <b>крутой</b> блог
Здесь значение очищается, чтобы оставить только безопасный текст без лишних тегов.
Пример 4: Очистка количества постов на странице
Проверим, как функция обрабатывает значение, представляющее количество постов на странице:
$posts_per_page = sanitize_option('posts_per_page', '10');
echo $posts_per_page; // вывод: 10
Функция корректно преобразует строку в целое число.
Пример 5: Очистка значения для часового пояса
Очистка значения часового пояса:
$timezone = sanitize_option('timezone_string', 'Europe/Moscow');
echo $timezone; // вывод: Europe/Moscow
Значение сохраняется в своем исходном виде, если оно соответствует ожидаемому формату.
Заключение
Функция sanitize_option()
является важным инструментом для защиты и обработки данных опций в WordPress. Она помогает гарантировать, что значения, сохраняемые в базе данных, безопасны и корректны. Это необходимо для предотвращения уязвимостей и ошибок, связанных с некорректными данными. Используя эту функцию, разработчики могут уверенно управлять опциями и обеспечивать безопасность своего сайта.