wpfts_preset_detected (Filter)
Фильтр wpfts_preset_detected
в WP Fast Total Search позволяет разработчикам изменить пресет, который будет использован для текущего поискового запроса. Он вызывается после того, как плагин определил пресет на основе типа поиска (например, поиск в админке, поиск на фронтенде, поиск в блоке Gutenberg) и настроек виджета, но перед тем, как пресет будет применен.
Когда используется
Этот фильтр полезен, когда вам нужно динамически изменить пресет поиска в зависимости от определенных условий. Например:
- Изменение пресета в зависимости от текущей страницы: Вы можете использовать этот фильтр для применения разных пресетов на разных страницах вашего сайта.
- Изменение пресета в зависимости от роли пользователя: Вы можете настроить разные пресеты поиска для разных ролей пользователей.
- Изменение пресета в зависимости от параметров запроса: Вы можете изменить пресет на основе значений, переданных в поисковом запросе.
Аргументы
$preset_ident
(string): Идентификатор пресета, определенного плагином. Может быть пустой строкой, если пресет не был определен.$wpq
(object): ОбъектWP_Query
, содержащий параметры текущего запроса.
Возвращаемое значение
$preset_ident
(string): Идентификатор пресета, который будет использован для поиска.
Пример (изменение пресета на странице определенной категории)
add_filter('wpfts_preset_detected', 'change_preset_for_category', 10, 2);
function change_preset_for_category($preset_ident, $wpq)
{
if (is_category('my-special-category')) {
return 'my_custom_preset';
}
return $preset_ident;
}
Важные замечания
- Фильтр
wpfts_preset_detected
вызывается перед тем, как пресет будет применен. - Если вы возвращаете пустую строку, будет использован стандартный поиск WordPress.
- Убедитесь, что пресет, идентификатор которого вы возвращаете, существует.
Фильтр wpfts_preset_detected
предоставляет разработчикам мощный механизм для динамического изменения настроек поиска в WP Fast Total Search, позволяя адаптировать поиск к различным контекстам и условиям.