wdrożenia PrestaShop

efekt rollover zdjęcia produktu w kategorii

  • 3 Odpowiedzi
  • 4146 Wyświetleń

0 użytkowników i 1 Gość przegląda ten wątek.

*

Offline Mallard2

  • Nowy
  • *
  • 19
  • 0
efekt rollover zdjęcia produktu w kategorii
« dnia: Lipiec 16, 2012, 08:55:52 pm »
Poszukuje modułu (również płatnego), który zmieniałby obrazek produktu na nr 2 po najechaniu na produkt na stronie kategorii :)

Coś w rodzaju rollover. Coś jak na tym przykładzie : http://www.lafraise.com/Index/index/style/41 Ale chodzi mi tylko o same zdjęcie bez dodatkowych opisów. ;)

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: efekt rollover zdjęcia produktu w kategorii
« Odpowiedź #1 dnia: Lipiec 17, 2012, 09:32:40 pm »
kiedys pisalem modulik ktory zmienial po najechaniu myszka na druga fotke, ale to tyczylo sie zdjec produktow np. w featured czy product-list, co do kategorii to na jakie zdjecie mialo by sie zmieniac? wybranego produktu (losowo) z danej kategorii czy w kategorii bylyby wrzucane dwa zdjecia?
design4VIP z innej strony...

*

Offline Mallard2

  • Nowy
  • *
  • 19
  • 0
Odp: efekt rollover zdjęcia produktu w kategorii
« Odpowiedź #2 dnia: Lipiec 19, 2012, 12:20:44 am »
Chodzi właśnie o coś takiego jak piszesz, czyli zmiana na drugą fotkę po najechaniu danego produktu w product-list
Aktualnie mam coś takiego, nie jest to moduł ale zmiana w core. PO najechaniu w product-list zmienia na drugie zdjęcie. Tylko że przy tym robi spustoszenie gdzie indziej, bo w przypadku price-drop.php czy search.php kasuje wszystkie zdjęcia :(
Dlatego szukam rozwiązania które  wyświetlałoby ten efekt  w product-list , featured , search, price-drop itd.

*

Offline design4VIP

  • user
  • Mieszkaniec
  • *****
  • 3,866
  • 131
    • design4VIP z innej strony...
  • PrestaShop: PS
  • Status: Programista
Odp: efekt rollover zdjęcia produktu w kategorii
« Odpowiedź #3 dnia: Lipiec 19, 2012, 07:57:34 pm »
moze sie przyda, ciekawy tutorialik:

Cytuj
To gain rollover image on home featured module either follow these step or replace your file(in module->homefeauterd) with file provided

Warning- backup your files before you make changes author will not responsible for any damage.
By editing or replacing the file you will change prestashop default file it may cause error in updating prestashop version


STEP 1

Replace following line in homefeatured.tpl

<img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" height="{$homeSize.height}" width="{$homeSize.width}" alt="{$product.name|escape:html:'UTF-8'}" class="vky"/>

Replace with ---

 {* ---- modified portion to show rollover image on home featured product  start here *}
<img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home')}" height="{$homeSize.height}" width="{$homeSize.width}" alt="{$product.name|escape:html:'UTF-8'}" class="vky"/>
                                        {foreach from=$addimages  key=k item=v}
                                        {if $k==$product.id_product}
                                        <img src="{$link->getImageLink($product.link_rewrite,$product.id_product|cat:"-"|cat:$v, 'home')}" height="{$homeSize.height}" width="{$homeSize.width}" alt="{$product.legend|escape:htmlall:'UTF-8'}" style="display:none" class="v" />
                                        {/if}
                                        {/foreach}
{* ---- modified portion to show rollover image on home featured product  End  here *}


STEP2

add following js at the end of page

{* additional jquery code to rollover image on home featured product *}
{literal}
     <script type="text/javascript">
      $(document).ready(function(){
      $("img.vky").mouseover(function(){
      if ( $(this).next("img").length > 0 ) {
      $(this).next("img").show();
      $(this).hide();
      }
    });
     $(".v").mouseout(function(){
      $(this).hide();
      $(this).prev("img").show();
    });
});
    </script>
{/literal}

STEP3

homefeatured.php

< Replace following code in function hookHome($params) near line no 99  >

$products = $category->getProducts((int)($params['cookie']->id_lang), 1, ($nb ? $nb : 10));

Replace with the code
$products = $category->getProducts((int)($params['cookie']->id_lang), 1, ($nb ? $nb : 10));
                $p=array();
               for($i=0;$i<count($products);$i++){
                $product=$products[$i];
                unset ($pid);
                $pid=$product['id_product'];
               $sql= "SELECT * FROM  `"._DB_PREFIX_."image` WHERE  `id_product` =  '{$pid}' AND cover =  '0' ORDER BY  `id_image` ";
               $results = Db::getInstance()->ExecuteS($sql);
               $result=$results[0];
               $p[$pid]=$result['id_image'];
               }
      $smarty->assign('addimages',$p);




design4VIP z innej strony...