protected function SearchApiSolrBackend::filterDuplicateAutocompleteSuggestions in Search API Solr 8.3
Same name and namespace in other branches
- 8.2 src/Plugin/search_api/backend/SearchApiSolrBackend.php \Drupal\search_api_solr\Plugin\search_api\backend\SearchApiSolrBackend::filterDuplicateAutocompleteSuggestions()
- 4.x src/Plugin/search_api/backend/SearchApiSolrBackend.php \Drupal\search_api_solr\Plugin\search_api\backend\SearchApiSolrBackend::filterDuplicateAutocompleteSuggestions()
Removes duplicated autocomplete suggestions from the given array.
Parameters
array $suggestions: The array of suggestions.
3 calls to SearchApiSolrBackend::filterDuplicateAutocompleteSuggestions()
- SearchApiSolrBackend::getAutocompleteSuggestions in src/
Plugin/ search_api/ backend/ SearchApiSolrBackend.php - Implements autocomplete compatible to AutocompleteBackendInterface.
- SearchApiSolrBackend::getSpellcheckSuggestions in src/
Plugin/ search_api/ backend/ SearchApiSolrBackend.php - SearchApiSolrBackend::getSuggesterSuggestions in src/
Plugin/ search_api/ backend/ SearchApiSolrBackend.php
File
- src/
Plugin/ search_api/ backend/ SearchApiSolrBackend.php, line 3406
Class
- SearchApiSolrBackend
- Apache Solr backend for search api.
Namespace
Drupal\search_api_solr\Plugin\search_api\backendCode
protected function filterDuplicateAutocompleteSuggestions(array &$suggestions) {
$added_suggestions = [];
$added_urls = [];
/** @var \Drupal\search_api_autocomplete\Suggestion\SuggestionInterface $suggestion */
foreach ($suggestions as $key => $suggestion) {
if (!in_array($suggestion
->getSuggestedKeys(), $added_suggestions, TRUE) || !in_array($suggestion
->getUrl(), $added_urls, TRUE)) {
$added_suggestions[] = $suggestion
->getSuggestedKeys();
$added_urls[] = $suggestion
->getUrl();
}
else {
unset($suggestions[$key]);
}
}
}