Описание pre_get_comments
— Action
Хук pre_get_comments позволяет изменять параметры запроса комментариев в WordPress. Он срабатывает перед выполнением запроса на получение комментариев и позволяет настраивать его параметры, такие как сортировка, фильтрация и условия выборки
Примеры использования
Пример изменения статуса комментариев на ‘ожидающие’:
add_action('pre_get_comments', function($query) {
if (!is_admin() && $query->get('post_id')) {
$query->set('status', 'hold');
}
});
В этом примере мы изменяем статус комментариев на ‘ожидающие’ для публичных страниц постов
Пример сортировки комментариев по автору:
add_action('pre_get_comments', function($query) {
if ($query->get('post_id')) {
$query->set('orderby', 'author');
$query->set('order', 'ASC');
}
});
Здесь комментарии сортируются по имени автора в порядке возрастания
Пример фильтрации комментариев по ID поста:
add_action('pre_get_comments', function($query) {
if (is_single()) {
$query->set('post_id', get_the_ID());
}
});
Мы фильтруем комментарии так, чтобы они отображались только для текущего поста
— Лучшие практики
– Использование
Используйте этот хук, когда необходимо изменить параметры запроса комментариев перед его выполнением
– Производительность
Хук не должен значительно влиять на производительность, но излишняя фильтрация может замедлить работу
– Предупреждения
Следите за тем, чтобы изменения не нарушали логику отображения комментариев на сайте
Альтернативы
Тип: filter
Этот фильтр позволяет изменять массив комментариев после выполнения запроса
Используйте его, если вам нужно модифицировать уже полученные комментарии