Описание функции wp_set_comment_status()
Функция wp_set_comment_status() используется для изменения статуса комментария в WordPress. Она позволяет устанавливать различные статусы, такие как ‘approve’, ‘hold’, ‘spam’, ‘trash’ для конкретного комментария по его ID.
Функция полезна в ситуациях, когда необходимо модифицировать статус комментария в процессе обработки, например, при проверке спама или при ручном одобрении комментариев.
Параметры
$comment_id
Тип: int
Обязательный: Да
Описание: ID комментария, статус которого нужно изменить
Возможные значения:
$status
Тип: string
Обязательный: Да
Описание: Новый статус комментария
Возможные значения:
0: approve
1: hold
2: spam
3: trash
Возвращаемое значение
Тип: bool
Описание: Успех операции изменения статуса комментария
Возможные значения:
• true — если статус успешно изменен
• false — если статус не изменен (например, если комментарий не найден)
Примеры использования
Базовый пример изменения статуса комментария на ‘approve’
$result = wp_set_comment_status(1, 'approve');
// Проверка результата
if ($result) {
echo 'Комментарий одобрен!';
} else {
echo 'Ошибка при одобрении комментария';
}
Комментарий с ID 1 будет одобрен
Изменение статуса комментария на ‘spam’
$result = wp_set_comment_status(42, 'spam');
if ($result) {
echo 'Комментарий помечен как спам.';
}
Комментарий с ID 42 будет помечен как спам
Проверка на существование комментария перед изменением статуса
$result = wp_set_comment_status(999, 'approve');
if ($result) {
echo 'Комментарий одобрен!';
} else {
echo 'Комментарий не найден или статус не изменен';
}
ID 999 не существует
Безопасность
Валидация входных данных: Функция проверяет, существует ли комментарий с заданным ID
Санитизация: Статус автоматически валидируется и разрешены только определенные значения
Рекомендации: Убедитесь, что пользователь имеет соответствующие права на изменение комментариев
— Связанные функции
Получает текущий статус комментария по его ID
Обновляет данные комментария, включая его статус
— Примечания
– Ограничения
Статус может быть изменен только для существующих комментариев
– Частые проблемы
- Ошибка при попытке изменить статус несуществующего комментария
- Неправильный статус может привести к игнорированию изменения