protected function ElasticsearchConnectorSearchApiHighlight::parseHighlightFields in Elasticsearch Connector 7.5
Same name and namespace in other branches
- 7 modules/elasticsearch_connector_search_api/includes/processor_highlight.inc \ElasticsearchConnectorSearchApiHighlight::parseHighlightFields()
- 7.2 modules/elasticsearch_connector_search_api/includes/processor_highlight.inc \ElasticsearchConnectorSearchApiHighlight::parseHighlightFields()
Transform the response
Parameters
array $result:
SearchApiQueryInterface $query:
Return value
array $result
1 call to ElasticsearchConnectorSearchApiHighlight::parseHighlightFields()
- ElasticsearchConnectorSearchApiHighlight::postprocessSearchResults in modules/
elasticsearch_connector_search_api/ includes/ processor_highlight.inc - Does nothing.
File
- modules/
elasticsearch_connector_search_api/ includes/ processor_highlight.inc, line 167 - Contains the SearchApiHighlight class.
Class
- ElasticsearchConnectorSearchApiHighlight
- @file Contains the SearchApiHighlight class.
Code
protected function parseHighlightFields($result, SearchApiQueryInterface $query) {
$fields = $query
->getFields();
$result_fields =& $result['fields'];
if (!empty($result['highlight']) && !empty($fields)) {
foreach ($fields as $field) {
if (isset($result_fields[$field]) && !empty($result['highlight'][$field])) {
if ($this->options['highlight'] != 'never') {
$result_fields[$field] = implode($this->options['concatenator'], $result['highlight'][$field]);
}
if ($this->options['excerpt']) {
if (!isset($result['excerpt'])) {
$result['excerpt'] = implode($this->options['concatenator'], $result['highlight'][$field]);
}
else {
$result['excerpt'] .= $this->options['concatenator'] . implode($this->options['concatenator'], $result['highlight'][$field]);
}
}
}
}
}
return $result;
}