|
| __construct (SearchConfig $config) |
|
| buildNonRegexHLFields (KeywordFeatureNode $node, QueryBuildingContext $context) |
|
| __construct (SearchConfig $config, array $fields) |
|
| getValueDelimiters () |
|
| parseValue ( $key, $value, $quotedValue, $valueDelimiter, $suffix, WarningCollector $warningCollector) |
|
| getFeatureName ( $key, $valueDelimiter) |
|
| getCrossSearchStrategy (KeywordFeatureNode $node) |
|
| doApplyExtended (SearchContext $context, $key, $value, $quotedValue, $negated, $delimiter, $suffix) |
|
| getFilterQuery (KeywordFeatureNode $node, QueryBuildingContext $context) |
| @inheritDoc
|
|
| buildHighlightFields (KeywordFeatureNode $node, QueryBuildingContext $context) |
| @inheritDoc
|
|
| getKeywordPrefixes () |
|
| allowEmptyValue () |
| Whether this keyword allows empty value.
|
|
| hasValue () |
| Whether this keyword can have a value.
|
|
| greedy () |
| Whether this keyword is greedy consuming the rest of the string.
|
|
| queryHeader () |
| Whether this keyword can appear only at the beginning of the query (excluding spaces)
|
|
| expand (KeywordFeatureNode $node, SearchConfig $config, WarningCollector $warningCollector) |
|
| apply (SearchContext $context, $term) |
|
Applies a filter against the title field in elasticsearch.
When not negated the term remains in the original query as a scoring signal. The term itself is used as a QueryString query, so some advanced syntax like * and phrase matches can be used. Note that quotes in the incoming query are maintained in the generated filter.
Examples: intitle:Foo intitle:Foo* intitle:"gold rush"
Things that might seem like they would work, but don't. This is because the quotes are maintained in the filter and in the top level query. intitle:"foo*" intitle:"foo OR bar"