You are here

class Terms in Search API Solr 8.3

Same name and namespace in other branches
  1. 8.2 src/Plugin/search_api_autocomplete/suggester/Terms.php \Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester\Terms
  2. 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

Expanded class hierarchy of Terms

File

src/Plugin/search_api_autocomplete/suggester/Terms.php, line 17

Namespace

Drupal\search_api_solr\Plugin\search_api_autocomplete\suggester
View source
class Terms extends Server {
  use BackendTrait;

  /**
   * {@inheritdoc}
   *
   * @throws \Drupal\search_api\SearchApiException
   * @throws \Drupal\search_api_autocomplete\SearchApiAutocompleteException
   */
  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);
  }

}

Members

Namesort descending Modifiers Type Description Overrides
BackendTrait::getBackend protected static function Retrieves the backend for the given index, if it supports autocomplete.
ConfigurablePluginBase::calculateDependencies public function Calculates dependencies for the configured plugin. Overrides DependentPluginInterface::calculateDependencies 6
ConfigurablePluginBase::calculatePluginDependencies Deprecated protected function Calculates and adds dependencies of a specific plugin instance.
ConfigurablePluginBase::getConfiguration public function Gets this plugin's configuration. Overrides ConfigurableInterface::getConfiguration
ConfigurablePluginBase::getDescription public function Returns the plugin's description. Overrides ConfigurablePluginInterface::getDescription
ConfigurablePluginBase::getPluginDependencies Deprecated protected function Calculates and returns dependencies of a specific plugin instance.
ConfigurablePluginBase::label public function Returns the label for use on the administration pages. Overrides ConfigurablePluginInterface::label
ConfigurablePluginBase::moduleHandler Deprecated protected function Wraps the module handler.
ConfigurablePluginBase::onDependencyRemoval public function Informs the plugin that some of its dependencies are being removed. Overrides ConfigurablePluginInterface::onDependencyRemoval 5
ConfigurablePluginBase::setConfiguration public function Sets the configuration for this plugin instance. Overrides ConfigurableInterface::setConfiguration 3
ConfigurablePluginBase::themeHandler Deprecated protected function Wraps the theme handler.
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
DependencyTrait::$dependencies protected property The object's dependencies.
DependencyTrait::addDependencies protected function Adds multiple dependencies.
DependencyTrait::addDependency protected function Adds a dependency.
HideablePluginBase::isHidden public function Determines whether this plugin should be hidden in the UI. Overrides HideablePluginInterface::isHidden 1
LoggerTrait::$logger protected property The logging channel to use.
LoggerTrait::getLogger public function Retrieves the logger.
LoggerTrait::logException protected function Logs an exception.
LoggerTrait::setLogger public function Sets the logger.
MessengerTrait::$messenger protected property The messenger. 29
MessengerTrait::messenger public function Gets the messenger. 29
MessengerTrait::setMessenger public function Sets the messenger.
PluginBase::$configuration protected property Configuration information passed into the plugin. 1
PluginBase::$pluginDefinition protected property The plugin implementation definition. 1
PluginBase::$pluginId protected property The plugin_id.
PluginBase::$search protected property The search this suggester is attached to.
PluginBase::DERIVATIVE_SEPARATOR constant A string which is used to separate base plugin IDs from the derivative ID.
PluginBase::getBaseId public function Gets the base_plugin_id of the plugin instance. Overrides DerivativeInspectionInterface::getBaseId
PluginBase::getDerivativeId public function Gets the derivative_id of the plugin instance. Overrides DerivativeInspectionInterface::getDerivativeId
PluginBase::getPluginDefinition public function Gets the definition of the plugin implementation. Overrides PluginInspectionInterface::getPluginDefinition 3
PluginBase::getPluginId public function Gets the plugin_id of the plugin instance. Overrides PluginInspectionInterface::getPluginId
PluginBase::getSearch public function Retrieves the search this plugin is configured for. Overrides PluginInterface::getSearch
PluginBase::isConfigurable public function Determines if the plugin is configurable.
PluginBase::setSearch public function Sets the search this plugin is configured for. Overrides PluginInterface::setSearch
PluginBase::__construct public function Constructs a SearchPluginBase object. Overrides ConfigurablePluginBase::__construct 1
PluginDependencyTrait::calculatePluginDependencies protected function Calculates and adds dependencies of a specific plugin instance. Aliased as: traitCalculatePluginDependencies 1
PluginDependencyTrait::getPluginDependencies protected function Calculates and returns dependencies of a specific plugin instance. Aliased as: traitGetPluginDependencies
PluginDependencyTrait::moduleHandler protected function Wraps the module handler. Aliased as: traitModuleHandler 1
PluginDependencyTrait::themeHandler protected function Wraps the theme handler. Aliased as: traitThemeHandler 1
PluginFormTrait::validateConfigurationForm public function Form validation handler. 2
Server::$languageManager protected property The language manager.
Server::$transliterator protected property The transliteration.
Server::buildConfigurationForm public function Form constructor. Overrides PluginFormInterface::buildConfigurationForm
Server::create public static function Creates an instance of the plugin. Overrides ConfigurablePluginBase::create
Server::defaultConfiguration public function Gets default configuration for this plugin. Overrides ConfigurablePluginBase::defaultConfiguration
Server::getLanguageManager public function Retrieves the language manager.
Server::getTransliterator public function Retrieves the transliteration.
Server::setLanguageManager public function Sets the language manager.
Server::setTransliterator public function Sets the transliteration.
Server::submitConfigurationForm public function Form submission handler. Overrides PluginFormTrait::submitConfigurationForm
Server::supportsSearch public static function Determines whether this plugin supports the given search. Overrides SuggesterPluginBase::supportsSearch
StringTranslationTrait::$stringTranslation protected property The string translation service. 1
StringTranslationTrait::formatPlural protected function Formats a string containing a count of items.
StringTranslationTrait::getNumberOfPlurals protected function Returns the number of plurals supported by a given language.
StringTranslationTrait::getStringTranslation protected function Gets the string translation service.
StringTranslationTrait::setStringTranslation public function Sets the string translation service to use. 2
StringTranslationTrait::t protected function Translates a string to the current language or to a given language.
SuggesterPluginBase::alterAutocompleteElement public function Alters an autocomplete element that should use this suggester. Overrides SuggesterInterface::alterAutocompleteElement 1
Terms::getAutocompleteSuggestions public function Overrides Server::getAutocompleteSuggestions