Здравствуйте, поискал по форуму, не нашел решения
Поэтому Решение:
Речь пойдет о связке модуля поиска RokAjaxSearch и компонента магазина JoomShopping 3.11.4 + Joomla 2.5 + изображения товаров в результатах поиска.
Данный модуль может выводить результаты поиска с помощью AJAX технологии сразу под строкой поиска.
1) Вытащим картинку из базы данных joomshoppingИдем в папку \plugins\search\joomshopping\joomshopping.php находим та строку
примерно 91и видим запрос:
$query = "SELECT prod.product_id AS slug, pr_cat.category_id AS catslug, prod.`".$lang->get('name')."` as title,
CONCAT(prod.`".$lang->get('short_description')."`,' ',prod.`".$lang->get('description')."`) as text,
'2' AS browsernav,
prod.product_date_added AS created,
cat.`".$lang->get('name')."` AS section
FROM `#__jshopping_products` AS prod
LEFT JOIN `#__jshopping_products_to_categories` AS pr_cat ON pr_cat.product_id = prod.product_id
LEFT JOIN `#__jshopping_categories` AS cat ON pr_cat.category_id = cat.category_id
WHERE ($where) AND prod.product_publish = '1' AND cat.category_publish='1'
GROUP BY prod.product_id
ORDER BY $order
";
В него необходимо добавить вызов картинки, заменяем выше приведенный кусок кода на следующий
(была добавлена строка
prod.product_thumb_image AS myimg,):
$query = "SELECT prod.product_id AS slug, pr_cat.category_id AS catslug, prod.`".$lang->get('name')."` as title,
CONCAT(prod.`".$lang->get('short_description')."`,' ',prod.`".$lang->get('description')."`) as text,
'2' AS browsernav,
prod.product_date_added AS created,
prod.product_thumb_image AS myimg,
cat.`".$lang->get('name')."` AS section
FROM `#__jshopping_products` AS prod
LEFT JOIN `#__jshopping_products_to_categories` AS pr_cat ON pr_cat.product_id = prod.product_id
LEFT JOIN `#__jshopping_categories` AS cat ON pr_cat.category_id = cat.category_id
WHERE ($where) AND prod.product_publish = '1' AND cat.category_publish='1'
GROUP BY prod.product_id
ORDER BY $order
";
В этом файле больше никаких изменений не требуется.2) Файл \components\com_search\views\search\tmpl\default_results.phpУ меня данный файл перенесен в шаблон и имеет путь : \templates\имя_шаблона\html\com_search\search\default_resuts.php
В данном файле необходимо вставить вывод картинки, скорей всего перед текстом.
Строка 31:
<?php if ($result->myimg) :
$myimg = "<img src=/components/com_jshopping/files/img_products/$result->myimg class='s-img'/>" ;
elseif (!$result->myimg) :
$myimg = "<img src='/components/com_jshopping/files/img_products/noimage.gif' class='s-img'/>" ;
endif; ?>
<dd class="result-text">
<?php echo $myimg; echo $result->text; ?>
</dd>
ВАЖНО! Вывод картинки не заключать ни в какие спаны, дивы и прочие блоки, работать не будет. Кому интересно почему, может и расскажу, как-нибудь...
Первые несколько строк это проверка есть ли картинка для данного товара ,если нет, то вывести ту, что по умолчанию. Можно было бы данную проверку вставить прямо в блок result_text, но что-то оно не заработало.
на этом в принципе и все, стили и прочее каждый поправляет для себя сам. И привожу картинку с результатом: