Ниже приведен пример кода для добавления полей для сортировки и для вывода.
/**
* Implementation of hook_apachesolr_update_index()
* Here we're adding custom fields to index, so that they available for sorting. To make this work, it's required to re-index content.
*/
function somemodule_apachesolr_update_index(&$document, $node) {
if ($node->type == 'product') {
$document->addField('sm_default_qty', $node->default_qty);
$document->addField('sm_sell_price', $node->sell_price);
$document->addField('sm_model', $node->model);
foreach ($node->field_images AS $image) {
//$imagecached_filepath = imagecache_create_path('product', $image['filepath']);
$document->addField('sm_field_images', $image['filepath']);
}
}
}
/**
* Implementation of hook_apachesolr_modify_query()
* Here we point what additional fields we need to get from solr
*/
function somemodule_apachesolr_modify_query(&$query, &$params, $caller) {
$params['fl'] .= ',sm_default_qty,sm_field_images,sm_sell_price,sm_model';
}
Если вы хотите полностью настроить вывод, вы должны сделать следующее:
1) Скопируйте search-results.tpl.php и search-result.tpl.php из / modules / search в папку вашей темы.
2) Используйте объект $ result по мере необходимости в search-result.tpl.php
3) Не забудьте очистить реестр тем, посетив admin / build / themes
Или, как уже упоминалось, вы можете переопределить, используя обработчики препроцессора.
С уважением, Слава