Разобрался, в файле вашей темы functions.php вставить :
function cust_refined_pattern_search($params) {
if ($params['sPattern'] != '' && !Session::newInstance()->_get('seeBy')) {
$mSearch = Search::newInstance();
$query_elements = (array) json_decode($mSearch->toJson());
$mSearch->addJoinTable(count($query_elements['tables_join']), sprintf("(SELECT DISTINCT(fk_i_item_id), MATCH(s_title, s_description) AGAINST('%s') AS relevance FROM %st_item_description ) des", $params['sPattern'], DB_TABLE_PREFIX), 'des.fk_i_item_id = '.DB_TABLE_PREFIX.'t_item.pk_i_id', 'INNER' );
$mSearch->addLocale('%');
$mSearch->addGroupBy(DB_TABLE_PREFIX.'t_item.pk_i_id');
$mSearch->order("des.relevance DESC, dt_pub_date", "DESC");
}
Session::newInstance()->_drop('seeBy');
}
osc_add_hook('search_conditions', 'cust_refined_pattern_search');
function cust_alerts_locale_hack_start() {
if (osc_get_osclass_section() == "alerts") {
View::newInstance()->_exportVariableToView('aUserLocale', Session::newInstance()->_get('userLocale'));
Session::newInstance()->_set('userLocale', '%');
}
// Detect See By link
if (Session::newInstance()->_get('seeBy') == '') Session::newInstance()->_set('seeBy', (Params::getParam('seeBy') ? 1 : 0));
Params::unsetParam('seeBy');
}
osc_add_hook('init', 'cust_alerts_locale_hack_start');
function cust_alerts_locale_hack_end($conditions) {
if (osc_get_osclass_section() == "alerts") {
Session::newInstance()->_set('userLocale', View::newInstance()->_get('aUserLocale'));
}
return $conditions;
}
osc_add_filter('sql_search_item_conditions', 'cust_alerts_locale_hack_end');
function cust_seeBy_link_add_identifier() { ?>
<script type="text/javascript">
$(".see_by a").on('click', function(e) {
$(this).prop('href', $(this).prop('href') + '?seeBy=1');
return true;
})
</script>
<?php }
osc_add_hook('footer', 'cust_seeBy_link_add_identifier');