Strona główna forum Wsparcie Tutoriale Dodawanie Lightbox'a do Magento

Dodawanie Lightbox'a do Magento

Czyli zrób to sam, krok po kroku...


Posty: 104
Gadu-Gadu: 0

Już znalazłem odpowiedź:
http://www.magentocommerce.com/boards/viewthread/30302/
Problemy są z Lightbox-em w wersji 2.04, trzeba się cofnąć do 2.03.

Re: Dodawanie Lightbox'a do Magento

PostTeraz jest 28 mar 2024, o 17:45
Google

Posty: 427
Lokalizacja: Internet


Posty: 116
Gadu-Gadu: 0

Ale jazda, zainstalowalem od poczatku magento w wersji 1.2.1.2 i dodalem tylko 1 produkt ze zdjeciem. Sklep calkowicie czysty, bez zadnych dodatków. Znow nie dziala ten suwak do powiekszania zdjecia.
Dobry hosting pod Magento? A może sklep KQS? Tak dla kontrastu...

jemoon Avatar użytkownika
Administrator

Posty: 529
Lokalizacja: Gdańsk
Gadu-Gadu: 0

witam,
@Lesiu Jak pisałem wcześniej jest to błąd Magento więc musisz wprowadzić zmianę o której pisałem z 5 postów wyżej.


Posty: 116
Gadu-Gadu: 0

Faktycznie, pomoglo, dzieki za rozwiazanie. Az dziwne, ze juz jakis czas temu zgloszono ten istotny blad na oficjalnym forum Magento i nie jeszcze nie wydano nowej, poprawionej wersji 1.2.1.3. Malo tego, ten blad istnieje juz co najmniej od wersji 1.2.0.2 i ekipa Magento zostala o nim poinformowana.
Dobry hosting pod Magento? A może sklep KQS? Tak dla kontrastu...


Posty: 1575
Gadu-Gadu: 0

Dodanie Lightbox-a do base image i pozostawienie Zoom-a:

Na końcu lightbox.js zamieniamy:
document.observe('dom:loaded', function () { new Lightbox(); });

na
var myLightbox;
document.observe('dom:loaded', function () { myLightbox = new Lightbox(); });


W media.phtml zamieniamy:
<?php
        $_img = '<img id="image" src="'.$this->helper('catalog/image')->init($_product, 'image').'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'" />';
        echo $_helper->productAttribute($_product, $_img, 'image')
    ?>


na:
    <?php
        $_img = '<img id="image" src="'.$this->helper('catalog/image')->init($_product, 'image').'" alt="'.$this->htmlEscape($this->getImageLabel()).'" title="'.$this->htmlEscape($this->getImageLabel()).'"  ondblclick="myLightbox.start($(\'imageLink\'));"/>';
        echo $_helper->productAttribute($_product, $_img, 'image')
    ?>
   <a href="<?php echo $this->helper('catalog/image')->init($_product, 'image'); ?>" id="imageLink" rel="lightbox"></a>


a następnie zamieniamy:
<script type="text/javascript">
    Event.observe(window, 'load', function() {
        product_zoom = new Product.Zoom('image', 'track', 'handle', 'zoom_in', 'zoom_out', 'track_hint');
    });
</script>

tak żeby wyglądał w taki sposób:

<script type="text/javascript">
    Event.observe(window, 'load', function() {
        product_zoom = new Product.Zoom('image', 'track', 'handle', 'zoom_in', 'zoom_out', 'track_hint');
   Event.stopObserving($('image'), 'dblclick', null);
    });
</script>


Można to zobaczyć np tu: http://www.glasso.pl/sta010.html.
3h nad tym siedziałem, myślę ze nie na marne ;)
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut

Post 19 kwi 2009, o 12:53
jemoon Avatar użytkownika
Administrator

Posty: 529
Lokalizacja: Gdańsk
Gadu-Gadu: 0

witam,
@kkkonrad Twoje rozwiązanie się na pewno przyda - dla mnie osobiście prezentacja zdjęć w Magento w trybie standardowym trochę słaba jest :/
P.S
nie wiem czy to działanie zamierzone czy nie ale w sklepie do którego link podałeś z-index nagłówka jest wyższy od z-indexu warstwy cienia w lightboxie przez co efekt 'przyciemnienia' nie jest całkowicie widoczny.

Post 19 kwi 2009, o 13:00

Posty: 1575
Gadu-Gadu: 0

No tak, panowie z Varien mogli by się temu przyjrzeć trochę dokładniej.
Jeśli chodzi o z-index to jest to niezamierzone działanie, dzięki za uwagę, poprawię to na pewno.
hosting-magento.pl / magentohosting.eu - szybki hosting Magento
https://www.mage24.pl/ - twój sklep Magento 2 w 5 minut

Post 18 maja 2009, o 19:39

Posty: 729
Gadu-Gadu: 0

Witam, a jak zrobić aby lightbox działał przy produktach grupowych

Zdjęcia wyświetlam za pomocą :
        <?php
echo '<A  href="'.$this->helper('catalog/image')->init($_item, 'image').'" ><img src="'.$this->helper('catalog/image')->init($_item, 'small_image')->resize(112, 112).'" width="112"><a>';
?>


Zobaczymy kto będzie szybszy wy czy ja :)

Dobra byłem szybszy oto rozwiązanie:

<a href="<?php echo $this->helper('catalog/image')->init($_item, 'image'); ?>" rel="lightbox[rotation]" title="<?php echo $this->htmlEscape($_product->getName()) ?>
<?php
echo '<a  href="'.$this->helper('catalog/image')->init($_item, 'image').'" ><img src="'.$this->helper('catalog/image')->init($_item, 'small_image')->resize(112, 112).'" width="112"><a>';
?> </a>
Magento krok po kroku - aktualne informacje ze świata magento.

Post 16 cze 2009, o 17:08

Posty: 32
Lokalizacja: Gdańsk
Gadu-Gadu: 0

Witam
A jak zmienić żeby pod zdjęciem wyświetlić nazwę, która dopisywałem do każdego obrazka w PA a nie nazwę produktu głównego.

Pozdrawiam


Rozwiązanie
Należy zmienić w pliku media.phtml
<?php echo $_product->getName();?>
na
<?php echo $_image->getLabel();?>
Magento 1.3.2.4

Post 24 cze 2009, o 21:14

Posty: 428
Lokalizacja: W-wka
Gadu-Gadu: 36599


Poprzednia strona

Powrót do Tutoriale



cron