Termék nagy (kinagyított – thickbox) képméretének megváltoztatása Fancybox 1.3.4 alatt. Ezt a változatot a Prestashop 1.4.x-es verziójában találjuk meg.
Bizonyos esetekben előfordul, hogy nem elég a Prestashop által nyújtott alap 600 x 600-as képfelbontás.
Élő példa egy bakelitlemezeket áruló webáruház, ahol rendkívül fontos a jó minőségű kép hogy el lehessen olvasni a borító hátulján lévő zeneszámok részleteit.
Két dolog kell a képeink megnöveléséhez: a képek nagyobb méretre állítása és újrageneráltatása a shoppal, valamint némi Fancybox beállítás. Lássunk hozzá!
Admin felületen navigáljunk a képekhez (beállítások => képek / preferences => images), majd válasszuk ki a thickbox típusú képméretünket szerkesztésre:
Ha beleléptünk, állítsuk át a szélességet és magasságot arra az értékre, amennyire növelni szeretnénk. A példában én 1200 x 1200-ra fogom növelni.
Mentés után lentebb újra kell generáltatni a képeket (ilyenkor a termék eredeti képéből mérettől függően fel vagy legenerálja az 1200 x 1200-as felbontású képet) az alábbi módon:
Azonban vigyázzunk ezzel. Ha sok termékünk van, akkor a szerver könnyen túllépi a maximális végrehajtási időt, ami után Internal Server Error-t kaphatunk. Kényes terület megállapítani azt a termékszámot, ami felett biztosan nem tudjuk így legenerálni a képeket, mert ez függ: termékszámtól, termékképek számától, beállított kép méretétől, szerver hardverétől, aktuális szerverterheléstől, szerver beállításától…
Én azt mondanám, hogy 1000 – 3000 feletti termékszám esetén nem érdemes próbálkozni (úgy sem hogy kiszeded a pipát az “Előző képek törlése” elől => ezt azért ajánlja fel, mert idő kell az előző képek törléséhez is, és ha ezt nem alkalmazod akkor időt nyerhetsz, de én nem szeretem mert így a szemetet – vagyis a már nem kellő képeket – fent hagyja szerveren, és amúgy sem nyersz vele csak pár másodpercet), hacsak nem VPS-ről van szó.
Az ilyen esetekben localhoston érdemes tovább próbálkozni. Tehát klónt készíteni a webáruházról, azt felépíteni saját gépünkön (esetleg XAMPP alatt) és a képek újragenerálása előtt módosítani a php.ini-ben a max_execution_time-ot.
Ha sikerült a képek újragenerálásán túljutnunk, akkor a Fancybox-on kell egy kicsit csiszolnunk hogy megszeresse az újdonsült képméretünket. Nyissuk meg a
js/jquery/jquery.fancybox-1.3.4.js
javascriptet, majd keressük ki ezt a részt (valahol a 1108-as sor körül):
autoScale : true,
majd módosítsjuk le false-ra:
autoScale : false,
Ezzel kikapcsoltuk a Fancybox automatikus képméretezését. A hivatalos forrás ezt írja a Fancybox ezen paraméteréről:
“autoScale: a FancyBox automatikus méretezésének engedélyezése/tiltása a viewport-hoz
(true | false) (alapértelmezett: true)”
Ha ezzel megvagyunk, akkor érdemes egy böngésző cashe-t üríteni (shift + ctrl + del), és utána megnézni, sikerült-e.
Ha kérdésed van ne habozz velem felvenni a kapcsolatot! 🙂