Описание функции sanitize_term_field()
Функция sanitize_term_field() предназначена для очистки и валидации поля термина, чтобы гарантировать, что данные соответствуют требованиям базы данных и не содержат недопустимых символов. Эта функция используется при редактировании термина в админке и в других местах, где необходимо обеспечить целостность данных термина.
Функция гарантирует, что данные безопасны и подходят для хранения и отображения
Параметры
$field
Тип: string
Обязательный: Да
Описание: Имя поля термина, которое необходимо очистить
Возможные значения:
0: name
1: slug
2: description
$term
Тип: mixed
Обязательный: Да
Описание: Данные термина, которые необходимо очистить. Может быть строкой или объектом WP_Term
$context
Тип: string
Обязательный: Нет
По умолчанию: add
Описание: Контекст, в котором происходит очистка. Используется для определения типа валидации
Возможные значения:
0: add
1: edit
Возвращаемое значение
Тип: mixed
Описание: Очищенное значение термина или false в случае неуспеха
Возможные значения:
• Очищенное значение термина при успешном выполнении
• false если очистка не удалась
Примеры использования
Базовый пример очистки имени термина
$sanitized_name = sanitize_term_field('name', 'My Term', 0);
// $sanitized_name будет 'My Term'
Имя термина успешно очищено
Очистка slug термина с недопустимыми символами
$sanitized_slug = sanitize_term_field('slug', 'custom-term!', 0);
// $sanitized_slug будет 'custom-term'
Недопустимые символы были удалены
Пример обработки ошибки при очистке
$sanitized_description = sanitize_term_field('description', '', 0);
if ($sanitized_description === false) {
echo 'Ошибка очистки';
}
Возвращает false, если значение пустое
Пример использования функции в плагине для очистки данных термина
$term_data = array('name' => 'New Term', 'slug' => 'new-term');
$sanitized_term = sanitize_term_field('name', $term_data['name'], 0);
$sanitized_slug = sanitize_term_field('slug', $term_data['slug'], 0);
Подготовка данных термина для сохранения
Безопасность
Валидация входных данных: Функция использует встроенные механизмы валидации WordPress
Санитизация: Данные автоматически очищаются от недопустимых символов
Рекомендации: Всегда проверяйте возвращаемые значения перед использованием
— Связанные функции
Очищает текстовые поля от недопустимых символов
Обновляет термины в базе данных
— Хуки
Фильтрует данные термина перед их очисткой
— Примечания
– Ограничения
Функция может не сработать для сложных объектов или массивов
– Частые проблемы
- Ошибки при передаче неверных типов данных
- Проблемы с кодировкой символов