Думаю, надо переопределить theme_search_item() в template.php функцией phptemplate_search_item(). И там использовать theme_uc_catalog_item(), предварительно сделав node_load() для $item.
А что, вариант penexe не работает разве? Ну все равно я выше неправильно написал, так что исправлюсь Под рукой есть пятый друпал с уберкартом, так что речь о нем.
Открываю файл путь_к_моей_теме/template.php. Добавляю туда такую функцию
<?php function phptemplate_search_item($item, $type) { return node_view($item['node'], TRUE); } ?>
Так же выражаю огромную благодарность penexe. Весь день мучился в поисках подобного решения. Пытался, безрезультатно естественно, решить эту проблему через вьюху page(search/node/%), так как хотелось что бы показывались темизированные во вьюхе блоки тизера состоящие из полей (картинка, заголовок, цена, кнопка покупки), а в вашем варианте сразу показывает страницу(ы) товара, что тоже неплохо. Еще раз благодарю.
Комментарии
Результаты поиска Drupal темизируются в search-result.tpl.php и search-results.tpl.php, правда вот не знаю, как с Ubercart в этом плане дела обстоят
в search-result.tpl.php
<?php if($info['type'] == 'node'): ?>
<?php print node_view($info_split['node'], TRUE, FALSE, TRUE);?>
<?php else:?>
<dt class="title">
<a href="<?php print $url; ?>"><?php print $title; ?></a>
</dt>
<dd>
<?php if ($snippet) : ?>
<p class="search-snippet"><?php print $snippet; ?></p>
<?php endif; ?>
<?php if ($info) : ?>
<p class="search-info"><?php print $info; ?></p>
<?php endif; ?>
</dd>
<?php endif;?>
должно работать
Думаю, надо переопределить theme_search_item() в template.php функцией phptemplate_search_item(). И там использовать theme_uc_catalog_item(), предварительно сделав node_load() для $item.
ankheg - А можно разжевать немножко?
А что, вариант penexe не работает разве? Ну все равно я выше неправильно написал, так что исправлюсь Под рукой есть пятый друпал с уберкартом, так что речь о нем.
Открываю файл путь_к_моей_теме/template.php. Добавляю туда такую функцию
<?php
function phptemplate_search_item($item, $type) {
return node_view($item['node'], TRUE);
}
?>
Всё.
Ничего не изменилось к сожалению.
Пользую 6 друпал
да я там ошибку допустил, вот рабочий вариант, выводит тизеры
<?php if($type == 'node'): ?>
<?php
$node = $result['node'];
$node = node_load($node->nid);
print node_view($node, TRUE, FALSE, TRUE);
?>
<?php else:?>
<dt class="title">
<a href="<?php print $url; ?>"><?php print $title; ?></a>
</dt>
<dd>
<?php if ($snippet) : ?>
<p class="search-snippet"><?php print $snippet; ?></p>
<?php endif; ?>
<?php if ($info) : ?>
<p class="search-info"><?php print $info; ?></p>
<?php endif; ?>
</dd>
<?php endif;?>
Спасибо большое, penexe! Очень пригодилось!
Спасибо. уже ближе к теме
Ой! То, что искал!!! Беру)
Так же выражаю огромную благодарность penexe. Весь день мучился в поисках подобного решения. Пытался, безрезультатно естественно, решить эту проблему через вьюху page(search/node/%), так как хотелось что бы показывались темизированные во вьюхе блоки тизера состоящие из полей (картинка, заголовок, цена, кнопка покупки), а в вашем варианте сразу показывает страницу(ы) товара, что тоже неплохо. Еще раз благодарю.