Smile\ElasticsuiteCore\Api\Search\Request\ContainerConfigurationInterface::getRelevanceConfig PHP Method

getRelevanceConfig() public method

Retrieve the fulltext search relevance configuration for the container.
public getRelevanceConfig ( ) : Smile\ElasticsuiteCore\Api\Search\Request\Container\RelevanceConfigurationInterface
return Smile\ElasticsuiteCore\Api\Search\Request\Container\RelevanceConfigurationInterface
    public function getRelevanceConfig();

Usage Example

Esempio n. 1
0
 /**
  * Phonentic query part.
  *
  * @param ContainerConfigurationInterface $containerConfig Search request container configuration.
  * @param string                          $queryText       The text query.
  *
  * @return QueryInterface
  */
 private function getPhoneticQuery(ContainerConfigurationInterface $containerConfig, $queryText)
 {
     $relevanceConfig = $containerConfig->getRelevanceConfig();
     $analyzer = FieldInterface::ANALYZER_PHONETIC;
     $defaultSearchField = MappingInterface::DEFAULT_SPELLING_FIELD;
     $fuzzyFieldCallback = [$this, 'isFuzzyFieldCallback'];
     $searchFields = $this->getWeightedFields($containerConfig, $analyzer, $fuzzyFieldCallback, $defaultSearchField);
     $queryParams = ['fields' => $searchFields, 'queryText' => $queryText, 'minimumShouldMatch' => "100%", 'tieBreaker' => $relevanceConfig->getTieBreaker(), 'cutoffFrequency' => $relevanceConfig->getCutoffFrequency()];
     if ($relevanceConfig->getPhoneticConfiguration()->isFuzzinessEnabled()) {
         $queryParams['fuzzinessConfig'] = $relevanceConfig->getPhoneticConfiguration()->getFuzzinessConfiguration();
     }
     return $this->queryFactory->create(QueryInterface::TYPE_MULTIMATCH, $queryParams);
 }