$ctx = !empty($resourceArray['context_key']) ? $resourceArray['context_key'] : $modx->context->get('key'); $resourceArray['link'] = $modx->makeUrl($resourceArray['id'], $ctx); } if ($showExtract) { $extract = array_pop($search->searchArray); if (array_key_exists($extractSource, $resourceArray)) { $text = $resourceArray[$extractSource]; } else { $text = $modx->runSnippet($extractSource, $resourceArray); } $extract = $search->createExtract($text, $extractLength, $extract, $extractEllipsis); /* cleanup extract */ $extract = strip_tags(preg_replace("#\\<!--(.*?)--\\>#si", '', $extract)); $extract = preg_replace("#\\[\\[(.*?)\\]\\]#si", '', $extract); $extract = str_replace(array('[[', ']]'), '', $extract); $resourceArray['extract'] = !empty($highlightResults) ? $search->addHighlighting($extract, $highlightClass, $highlightTag) : $extract; } $resultsTpl['default']['results'][] = $search->getChunk($tpl, $resourceArray); $idx++; } } /* load postHooks to get faceted results */ if (!empty($postHooks)) { $limit = !empty($facetLimit) ? $facetLimit : $perPage; $search->loadHooks('post'); $search->postHooks->loadMultiple($postHooks, $response['results'], array('hooks' => $postHooks, 'search' => $searchString, 'offset' => !empty($_GET[$offsetIndex]) ? intval($_GET[$offsetIndex]) : 0, 'limit' => $limit, 'perPage' => $limit)); if (!empty($search->postHooks->facets)) { foreach ($search->postHooks->facets as $facetKey => $facetResults) { if (empty($resultsTpl[$facetKey])) { $resultsTpl[$facetKey] = array(); $resultsTpl[$facetKey]['total'] = $facetResults['total'];