Contenido API - SearchResult Object

This object ranks and displays the result of the indexed fulltext search. If you are not comfortable with this API feel free to use your own methods to display the search results. The search result is basically an array with article ID's.

If $search_result = $search->searchIndex($searchword, $searchwordex);

use object with

$oSearchResults = new SearchResult($search_result, 10);

$oSearchResults->setReplacement('', ''); // html-tags to emphasize the located searchwords

$num_res = $oSearchResults->getNumberOfResults(); $num_pages = $oSearchResults->getNumberOfPages(); $res_page = $oSearchResults->getSearchResultPage(1); // first result page foreach ($res_page as $key => $val) { $headline = $oSearchResults->getSearchContent($key, 'HTMLHEAD'); $first_headline = $headline[0]; $text = $oSearchResults->getSearchContent($key, 'HTML'); $first_text = $text[0]; $similarity = $oSearchResults->getSimilarity($key); $iOccurrence = $oSearchResults->getOccurrence($key);

}

version 1.0.0
author Willi Man
copyright four for business AG

 Methods

Compute ranking factor for each search result and order the search results by ranking factor NOTE: The ranking factor is the sum of occurences of matching searchterms weighted by similarity (in %) between searchword and matching word in the article.

SearchResult($search_result, $result_per_page, $oDB, $bDebug) 

TODO: One can think of more sophisticated ranking strategies. One could use the content type information for example because a matching word in the headline (CMS_HEADLINE[1]) could be weighted more than a matching word in the text (CMS_HTML[1]).

Parameters

$search_result

$result_per_page

$oDB

$bDebug

getArtCat()

getArtCat($artid) : \Category

Parameters

$artid

Returns

\CategoryId

getContent()

getContent($art_id, $cms_type, $id) : \Content

Parameters

$art_id

Id of an article

$cms_type

$id

Returns

\Contentof an article, specified by it's content type

getNumberOfPages()

getNumberOfPages() : \Number

Returns

\Numberof result pages

getNumberOfResults()

getNumberOfResults() : \Number

Returns

\Numberof articles in search result

getOccurrence()

getOccurrence($art_id) : \Number

Parameters

$art_id

Id of an article

Returns

\Numberof matching searchwords found in article

getSearchContent()

getSearchContent($art_id, $cms_type, $cms_nr) : \Content

Parameters

$art_id

Id of an article

$cms_type

Content type

$cms_nr

Returns

\Contentof an article in search result, specified by its type

getSearchResultPage()

getSearchResultPage($page_id) : \Artices

Parameters

$page_id

Returns

\Articesin page $page_id

getSimilarity()

getSimilarity($art_id) : \Similarity

Parameters

$art_id

Id of an article

Returns

\Similaritybetween searchword and matching word in article

setOrderedSearchResult()

setOrderedSearchResult($ranked_search, $result_per_page) : void

Parameters

$ranked_search

$result_per_page

setReplacement()

setReplacement(string $rep1, string $rep2) : void

Parameters

$rep1

string

The opening html-tag to emphasize the searchword e.g. ''

$rep2

string

The closing html-tag e.g. ''

 Properties

 

$bDebug : boolean
 

$cfg : array
 

$client : int
 

$db : object
 

$index : object
 

$lang : int
 

$ordered_search_result : array
 

$pages : int
 

$rank_structure : array
 

$replacement : array
 

$result_page : int
 

$result_per_page : int
 

$results : int
 

$search_result : array

..