wpfts_start_search_type (Filter)

Фильтр wpfts_start_search_type в WP Fast Total Search позволяет разработчикам изменить тип поиска, определяемый плагином в начале обработки запроса. Тип поиска используется для выбора пресета настроек поиска, который будет применен к запросу.

Когда используется

Этот фильтр может быть полезен, если вам нужно динамически изменить тип поиска в зависимости от определенных условий, например:

  • Изменение типа поиска в зависимости от текущей страницы: Вы можете использовать этот фильтр для применения разных пресетов на разных страницах вашего сайта.
  • Изменение типа поиска в зависимости от роли пользователя: Вы можете определить разные типы поиска для разных ролей пользователей.
  • Изменение типа поиска в зависимости от параметров запроса: Вы можете изменить тип поиска на основе данных, переданных в URL.

Аргументы

  • $search_type (string): Тип поиска, определенный плагином. Может принимать значения wpmainsearch_admin, wpmainsearch_frontend, wpblockquery или пустую строку, если тип не определен.
  • $wpq (object): Объект WP_Query, содержащий параметры текущего запроса.

Возвращаемое значение

  • $search_type (string): Модифицированный тип поиска.

Пример (изменение типа поиска на странице определенного типа поста)

add_filter('wpfts_start_search_type', 'change_search_type_for_cpt', 10, 2);
 
function change_search_type_for_cpt($search_type, $wpq)
{
	if (is_singular('my_custom_post_type')) {
		return 'my_custom_search_type'; //  Возвращаем  новый  тип  поиска.
	}
	return $search_type; //  В  остальных  случаях  возвращаем  исходный  тип.
 
}

Важные замечания

  • Фильтр wpfts_start_search_type вызывается перед выбором пресета настроек поиска.
  • Изменение типа поиска приведет к использованию другого пресета, если он определен для нового типа поиска.
  • Если вы возвращаете пустую строку в качестве типа поиска, плагин будет использовать стандартный поиск WordPress.

Этот фильтр дает разработчикам гибкость в настройке поиска в WP Fast Total Search и позволяет динамически изменять пресет настроек в зависимости от различных условий.