class Terms in Search API Solr 8.2
Same name and namespace in other branches
- 8.3 src/Plugin/search_api_autocomplete/suggester/Terms.php \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\Terms
- 4.x src/Plugin/search_api_autocomplete/suggester/Terms.php \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\Terms
Provides a suggester that retrieves suggestions from Solr's Terms component.
Plugin annotation
@SearchApiAutocompleteSuggester(
id = "search_api_solr_terms",
label = @Translation("Solr Terms"),
description = @Translation("Autocomplete the entered string based on Solr's Terms component. Note: Be careful when activating this feature if you run multiple indexes in one Solr core! The Terms component is not able to distinguish between the different indexes and returns matching terms for the complete core. If you run multiple indexes in one core the term counts are not correct and you might get suggestions that lead to zero results on a specific index! You can mitigate that effect if you ensure that the fulltext field names are completely different in the indexes.")
)
Hierarchy
- class \Drupal\Component\Plugin\PluginBase implements DerivativeInspectionInterface, PluginInspectionInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
- class \Drupal\search_api\Plugin\HideablePluginBase implements HideablePluginInterface
- class \Drupal\search_api\Plugin\ConfigurablePluginBase implements ConfigurablePluginInterface uses PluginDependencyTrait
- class \Drupal\search_api_autocomplete\Plugin\PluginBase implements PluginInterface
- class \Drupal\search_api_autocomplete\Suggester\SuggesterPluginBase implements SuggesterInterface
- class \Drupal\search_api_autocomplete\Plugin\search_api_autocomplete\suggester\Server implements PluginFormInterface uses PluginFormTrait
- class \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\Terms
- class \Drupal\search_api_autocomplete\Plugin\search_api_autocomplete\suggester\Server implements PluginFormInterface uses PluginFormTrait
- class \Drupal\search_api_autocomplete\Suggester\SuggesterPluginBase implements SuggesterInterface
- class \Drupal\search_api_autocomplete\Plugin\PluginBase implements PluginInterface
- class \Drupal\search_api\Plugin\ConfigurablePluginBase implements ConfigurablePluginInterface uses PluginDependencyTrait
- class \Drupal\search_api\Plugin\HideablePluginBase implements HideablePluginInterface
- class \Drupal\Core\Plugin\PluginBase uses DependencySerializationTrait, MessengerTrait, StringTranslationTrait
Expanded class hierarchy of Terms
File
- src/
Plugin/ search_api_autocomplete/ suggester/ Terms.php, line 19
Namespace
Drupal\search_api_solr\Plugin\search_api_autocomplete\suggesterView source
class Terms extends Server {
/**
* {@inheritdoc}
*/
public function getAutocompleteSuggestions(QueryInterface $query, $incomplete_key, $user_input) {
if (!($backend = static::getBackend($this
->getSearch()
->getIndex()))) {
return [];
}
if ($this->configuration['fields']) {
$query
->setFulltextFields($this->configuration['fields']);
}
else {
$query
->setFulltextFields($query
->getIndex()
->getFulltextFields());
}
return $backend
->getAutocompleteSuggestions($query, $this
->getSearch(), $incomplete_key, $user_input);
}
/**
* {@inheritdoc}
*/
protected static function getBackend(IndexInterface $index) {
if (!$index
->hasValidServer()) {
return NULL;
}
$server = $index
->getServerInstance();
$backend = $server
->getBackend();
if ($server
->supportsFeature('search_api_autocomplete') && $backend instanceof SolrAutocompleteInterface) {
return $backend;
}
return NULL;
}
}
Members
Name![]() |
Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ConfigurablePluginBase:: |
public | function |
Calculates dependencies for the configured plugin. Overrides DependentPluginInterface:: |
6 |
ConfigurablePluginBase:: |
protected | function | Calculates and adds dependencies of a specific plugin instance. | |
ConfigurablePluginBase:: |
public | function |
Gets this plugin's configuration. Overrides ConfigurableInterface:: |
|
ConfigurablePluginBase:: |
public | function |
Returns the plugin's description. Overrides ConfigurablePluginInterface:: |
|
ConfigurablePluginBase:: |
protected | function | Calculates and returns dependencies of a specific plugin instance. | |
ConfigurablePluginBase:: |
public | function |
Returns the label for use on the administration pages. Overrides ConfigurablePluginInterface:: |
|
ConfigurablePluginBase:: |
protected | function | Wraps the module handler. | |
ConfigurablePluginBase:: |
public | function |
Informs the plugin that some of its dependencies are being removed. Overrides ConfigurablePluginInterface:: |
5 |
ConfigurablePluginBase:: |
public | function |
Sets the configuration for this plugin instance. Overrides ConfigurableInterface:: |
3 |
ConfigurablePluginBase:: |
protected | function | Wraps the theme handler. | |
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
DependencyTrait:: |
protected | property | The object's dependencies. | |
DependencyTrait:: |
protected | function | Adds multiple dependencies. | |
DependencyTrait:: |
protected | function | Adds a dependency. | |
HideablePluginBase:: |
public | function |
Determines whether this plugin should be hidden in the UI. Overrides HideablePluginInterface:: |
1 |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
PluginBase:: |
protected | property | Configuration information passed into the plugin. | 1 |
PluginBase:: |
protected | property | The plugin implementation definition. | 1 |
PluginBase:: |
protected | property | The plugin_id. | |
PluginBase:: |
protected | property | The search this suggester is attached to. | |
PluginBase:: |
constant | A string which is used to separate base plugin IDs from the derivative ID. | ||
PluginBase:: |
public | function |
Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface:: |
|
PluginBase:: |
public | function |
Gets the definition of the plugin implementation. Overrides PluginInspectionInterface:: |
3 |
PluginBase:: |
public | function |
Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface:: |
|
PluginBase:: |
public | function |
Retrieves the search this plugin is configured for. Overrides PluginInterface:: |
|
PluginBase:: |
public | function | Determines if the plugin is configurable. | |
PluginBase:: |
public | function |
Sets the search this plugin is configured for. Overrides PluginInterface:: |
|
PluginBase:: |
public | function |
Constructs a SearchPluginBase object. Overrides ConfigurablePluginBase:: |
1 |
PluginDependencyTrait:: |
protected | function | Calculates and adds dependencies of a specific plugin instance. Aliased as: traitCalculatePluginDependencies | 1 |
PluginDependencyTrait:: |
protected | function | Calculates and returns dependencies of a specific plugin instance. Aliased as: traitGetPluginDependencies | |
PluginDependencyTrait:: |
protected | function | Wraps the module handler. Aliased as: traitModuleHandler | 1 |
PluginDependencyTrait:: |
protected | function | Wraps the theme handler. Aliased as: traitThemeHandler | 1 |
PluginFormTrait:: |
public | function | Form validation handler. | 2 |
Server:: |
protected | property | The language manager. | |
Server:: |
protected | property | The transliteration. | |
Server:: |
public | function |
Form constructor. Overrides PluginFormInterface:: |
|
Server:: |
public static | function |
Creates an instance of the plugin. Overrides ConfigurablePluginBase:: |
|
Server:: |
public | function |
Gets default configuration for this plugin. Overrides ConfigurablePluginBase:: |
|
Server:: |
public | function | Retrieves the language manager. | |
Server:: |
public | function | Retrieves the transliteration. | |
Server:: |
public | function | Sets the language manager. | |
Server:: |
public | function | Sets the transliteration. | |
Server:: |
public | function |
Form submission handler. Overrides PluginFormTrait:: |
|
Server:: |
public static | function |
Determines whether this plugin supports the given search. Overrides SuggesterPluginBase:: |
|
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. | |
SuggesterPluginBase:: |
public | function |
Alters an autocomplete element that should use this suggester. Overrides SuggesterInterface:: |
1 |
Terms:: |
public | function |
Retrieves autocompletion suggestions for some user input. Overrides Server:: |
|
Terms:: |
protected static | function |
Retrieves the backend for the given index, if it supports autocomplete. Overrides Server:: |