Я хотела, что бы в каталоге товаров и в карточке товаров были разные картинки.
Магазин в каталог товаров подгружает картинку вставленную в карточке товара, а можно ли сделать так, чтобы эти картинки были разные???
Из описания не совсем понятно откуда брать доп. изображение, если из загруженных, тогда можно скрывать основное изображение для стр. товара или наоборот (скрывать для стр. категории).
Пример со скрытием (подменой) основного изображения на стр. товара.
Откройте файл
/themes/ваша-тема/product.tpl и добавьте подобный код в самое начало:
Код:
{assign var=images value=$images|@array_diff_key:[$cover.id_image => '']}
{assign var=cover value=$images[$images|@key]}
И еще вопрос по этой теме, я хотела, чтобы при наведении мыши на товар в каталоге, картинка менялась на другую, например, в которой было бы краткое описание, можно ли это воплотить в жизнь и как это сделать?
Откройте файл
/controllers/front/CategoryController.php и до:
Код:
$this->context->smarty->assign('nb_products', $this->nbProducts);
добавьте подобный код:
Код:
foreach ($this->cat_products as &$product)
$product['id_image2'] = Db::getInstance()->getValue('SELECT id_image FROM `'._DB_PREFIX_.'image_shop` image_shop WHERE image_shop.`id_product` = '. (int)$product['id_product'] .' AND (image_shop.cover = 0 OR image_shop.cover is null)');
Откройте файл
/themes/ваша-тема/category.tpl и измените:
Код:
<a class="product_img_link" href="{$product.link|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}" itemprop="url">
<img class="replace-2x img-responsive" src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} itemprop="image" />
</a>
на:
Код:
<a class="product_img_link" href="{$product.link|escape:'html':'UTF-8'}" title="{$product.name|escape:'html':'UTF-8'}" itemprop="url">
<img class="replace-2x img-responsive hideIfHover" src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')|escape:'html':'UTF-8'}" alt="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} itemprop="image" />
{if isset($product.id_image2) && $product.id_image2}
<img class="showIfHover" src="{$link->getImageLink($product.link_rewrite, $product.id_image2, 'home_default')|escape:'html':'UTF-8'}" alt="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'html':'UTF-8'}{else}{$product.name|escape:'html':'UTF-8'}{/if}" />
{/if}
</a>
Откройте файл
/themes/ваша-тема/css/product_list.css и добавьте подобный код:
Код:
.showIfHover {display: none}
.product_img_link:hover .hideIfHover {display: none}
.product_img_link:hover .showIfHover {display: block}