Polskie wsparcie PrestaShop
PrestaShop => Wygląd => Wątek zaczęty przez: galganka w Grudzień 03, 2008, 08:00:41 pm
-
Witam!
Tak jak w temacie, czy istnieje taka możliwość?
-
Może to będzie śmieszne pytanie, ale... po co?
Nie ma dużej różnicy między tymi skryptami...
-
Owszem jest bardzo wielka różnica. Lightbox wyświetla zdjęcia w oryginalnym rozmiarze, natomiast thickbox zmniejsza zdjęcie, które powinno być największe. Często po kliknięciu na "powiększ" wyświetla się dużo mniejsze zdjęcie niż to które widać normalnie na stronie produktu.
Nie chce mi się przy kolejnym sklepie przy kilku tysiącach produktów ręcznie przez FTP-a wymieniać tych akurat zdjęć.
-
Wystarczy zamiast linka do ThickBoxa dać link do skryptu LightBox'a.
A w linkach do zdjęć dodać rel="lightbox" możesz usunąć wtedy z linka class="thickbox".
Wczytując LightBox'a wczytujesz olbrzymią bibliotekę Prototype, której nie wykorzystuje Presta.
Presta stawia na jQuery (moim zdaniem bardzo dobre rozwiązanie)
Więc finalnie wczytuje się Prototype, Lightbox i jQuery... dużo.. dużo... dużo za dużo.
Poszukaj innego skryptu lightbox dla jQuery... np prettyPhoto, albo jakiegoś samodzielnego javascriptu nie opartego o bibliotekę jQuery.
-
Wielkie dzięki za wyczerpującą odpowiedź, ale właśnie testuję najnowszą betę i tam zdjęcia wyświetlają się w thickboxie o wiele większe, zatem nie będę kombinować. Jestem zadowolona z tego, co teraz widzę.
Jeszcze raz dziękuję :)
-
galganka, zmien w 114 i 115 linijce js/jquery/thickbox-modified.js
wartosci 150 na np 70 - sporo pomaga ;) (w wersji 1.0 final przynajmniej, z bety 1.1 nie korzystałem)
-
Dziękuję bardzo, stawiam dwa sklepy na obu wersjach więc informacja jak najbardziej mi się przyda.
-
Wersja beta ma ThickBoxa pakowanego, więc nie ma linijek o których Zork pisze :-)
Wrócę do prettyPhoto dla jQuery... ten lightbox wyświetla zdjęcia zmniejszone do rozmiaru okna przegladarki, jeśli coś takiego nastąpi to pojawia się ikonka w którą jak klikniesz zdjęcie się powiększy i będzie miało oryginalny wymiar.
Jeszcze istnieje coś takiego jak Shadowbox... też dobre rozwiązanie pod jQuery ale na licencji "Creative Commons Attribution-Noncommercial-Share Alike (http://creativecommons.org/licenses/by-nc-sa/3.0/deed.pl)"
To kombajn... dużo cięższy od ThickBoxa ale ma wszystko :-)
-
Wystarczy zamiast linka do ThickBoxa dać link do skryptu LightBox'a.
A w linkach do zdjęć dodać rel="lightbox" możesz usunąć wtedy z linka class="thickbox".
Witam,
czy ktoś mógłby wskazać pliki, w którym należy dokonać tej zmiany? ???
Z góry dzięki!
-
Szukaj w pliku odpowiedzialnym za wyświetlenie produktu czyli product.tpl
<a href="{$img_prod_dir}{$product->id}-{$image.id_image}-thickbox.jpg" rel="other-views" class="thickbox {if $smarty.foreach.thumbnails.first}shown{/if}">
<img id="thumb_{$image.id_image}" src="{$img_prod_dir}{$product->id}-{$image.id_image}-medium.jpg" alt="{$image.legend|htmlspecialchars}" title="{$image.legend|htmlspecialchars}" />
</a>
-
Dzięki za prędką odpowiedź kuras! :)
Czy mógłbyś jednak dokładniej wytłumaczyć jak to uczynić? Normalnie, chcąc zastosować Lightbox należy wkleić w <HEAD> trochę kodu, pokroju
<script type="text/javascript" language="javascript" src="lytebox.js"></script>
<link rel="stylesheet" href="lytebox.css" type="text/css" media="screen" />
i poźniej w linku do obrazka dodać
rel="lytebox"
Jak więc zastosować Twoją sugestię, aby wszystko działało poprawnie?
A może łatwiej zmodyfikować kod odpowiedzialny za Thickbox, aby wyświetlał okienko z obrazkiem o wymiarach dopasowanych do wielkości tegoż obrazka?
Dzięki :)
-
Wstaw w head odpowiedni kod ładujący style i js.
A w pliku produktu zmień
<a href="{$img_prod_dir}{$product->id}-{$image.id_image}-thickbox.jpg" rel="lytebox[grupaObrazkow]" class="{if $smarty.foreach.thumbnails.first}shown{/if}">
Nie wiem czy wywalenie rel="other-views" a wstawienie rel="lytebox" nie wpłynie na coś.
I raczej wprowadzilbym kod rel="lytebox[grupaObrazkow]" aby można było się przekliknąć do następnego obrazka.
Spróbuje i zobacz czy zadziałało.
A drugiej części wypowiedzi Twojej nie czaje... tzn
A może łatwiej zmodyfikować kod odpowiedzialny za Thickbox, aby wyświetlał okienko z obrazkiem o wymiarach dopasowanych do wielkości tegoż obrazka?
-
Wstaw w head odpowiedni kod ładujący style i js.
no właśnie w tym problem, że plik product.tpl nie zawiera sekcji HEAD. Gdzie zatem należy wstawić ten kod ładujący??
I raczej wprowadzilbym kod rel="lytebox[grupaObrazkow]" aby można było się przekliknąć do następnego obrazka.
no no, wiadomix!
A drugiej części wypowiedzi Twojej nie czaje...
no chodzi mi o to czy da sie tak zrobić, aby Thickbox dopasowywał wielkość okienka z podglądem obrazka. standardowo pojawia się okno o wymiarach 600x600 px, przy grafikach przekraczających rozmiarem którąś z tych wartości - obrazek jest pomniejszany i dopasowywany. a ja chciałbym aby przy obrazku np 800x200 px okno Thickboxa miało adekwatny kształt i rozmiar.
czy już wiadomo o co mi chodzi?:)
-
Możesz link umieścić w treści strony, nie musi być to head, ale oczywiście robimy poprawnie więc szukaj pliku header.tpl
Z tego co się orientuje to lytebox otwiera obrazek w maksymalnej wielkości (czyli w takiej wielkości jak obrazek) ale nie większej niż okno przeglądarki.
-
http://www.prestashop.com/forums/viewthread/21414/developpement_et_modules/modification_encore_une_lightbox_dot__dot__dot__dot_/
Lightbox. Działający, trzeba poprzerzucać pliki i dopisać kilka linijek, jedną zamienić.
Sprawdziłem u siebie i śmiga, brakuje tylko przerzucania zdjęć ale coś się pogrzebie.
Pozdrawiam