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, позволяя адаптировать поиск к различным контекстам и условиям.