wpfts_split_to_words (Filter)

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

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

Этот фильтр может быть полезен, если:

  • Стандартный алгоритм разделения на слова некорректно работает с вашим языком или контентом.
  • Вам нужно специальным образом обрабатывать определенные символы или последовательности символов.
  • Вы хотите исключить определенные слова или символы из индекса.

Аргументы

  • $words (array): Массив слов, полученных после разделения текста стандартным алгоритмом.
  • $text (string): Оригинальный текст, который был разделен на слова.

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

  • $words (array): Модифицированный массив слов.

Пример

/**
 *  Изменяет  алгоритм  разделения  текста  на  слова,  используя  регулярное  выражение  для  поддержки  кириллицы.
 */
add_filter('wpfts_split_to_words', 'my_wpfts_split_to_words_filter', 10, 2);
function my_wpfts_split_to_words_filter($words, $text) {
    //  Используем  регулярное  выражение  для  разделения  текста  на  слова,  
	//  поддерживающее  кириллицу  и  латиницу.
	preg_match_all('/[\p{L}\p{N}\']+/u', $text, $matches);
    return isset($matches[0]) ? $matches[0] : array();
}

Пример с удалением определенных слов

add_filter('wpfts_split_to_words', 'remove_specific_words', 10, 2);
 
function remove_specific_words($words, $text)
{
	$words_to_remove = array('and', 'or', 'the'); // Список слов для удаления
	$filtered_words = array();
 
	foreach ($words as $word) {
		if ( !in_array(strtolower($word), $words_to_remove) ) {
			$filtered_words[] = $word;
		}
	}
	return $filtered_words;
}

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

  • Фильтр wpfts_split_to_words вызывается при индексации контента, а не во время поиска.
  • Внимательно тестируйте свой кастомный алгоритм разделения текста, чтобы убедиться, что он корректно работает с вашим контентом.
  • Изменения, внесённые в алгоритм разделения на слова, влияют на содержимое индекса. После изменения алгоритма может потребоваться перестроить индекс.

Фильтр wpfts_split_to_words предоставляет разработчикам гибкость в настройке процесса индексации контента в WP Fast Total Search.