Boosting Dedicated Functions
Fetch Function Parameter: boost_functions
Boosts can be passed as function boosts which should be done according to the Solr function query syntax.
The fetch parameter should be specified as:
{set $search=fetch( ezfind,search, hash( 'query', $search_text, ... , 'boost_functions', hash('functions', array('<boostfunction n>', ...)), ...
where 'boost function n' should adhere to technical syntax of Solr functions.
Note: The Solr query syntax is quite elaborate but powerful, and documented on the Solr wiki pages: http://wiki.apache.org/solr/FunctionQuery
For example, the following boost function will favor more recent pages over older ones:
{set $search=fetch( 'ezfind', 'search', hash( 'query', $search_text, 'offset', $view_parameters.offset, 'limit', $page_limit, 'sort_by', hash( 'score', 'desc' ), 'boost_functions', hash('functions', array('recip(ms(NOW/HOUR,meta_published_dt),4e-12,1000,2)')) ))}
As of eZ Find LS 5.0.0 the mfunctions boost function has been added. The usage is similar to the functions boost function. Here's a usage example:
{set $search=fetch( 'ezfind', 'search', hash( 'query', $search_text, 'offset', $view_parameters.offset, 'limit', $page_limit, 'sort_by', hash( 'score', 'desc' ), 'boost_functions', hash('mfunctions', array('recip(ms(NOW/DAY,meta_published_dt),3.16e-11,0.5,0.5)' )) ))}
Note: Alternatively the RawBoostQueries ezfind.ini setting can also be used in order to achieve the same boosting effect.
Ricardo Correia (12/09/2013 3:41 pm)
Ricardo Correia (12/09/2013 3:41 pm)
Comments
There are no comments.