Ezzel a módszerrel könnyedén jeleníthetünk meg más logót más nyelveken.
Példának okáért ha a logónk egy mottóból áll, akkor azt természetesen magyarul jelenítjük meg. Ha többnyelvű a shopunk, akkor egy esetleges angol ügyfél szintén ugyanazt a -magyar- logót fogja látni, ami egy mottó esetében nem túl profi megoldás.
Főleg annak tudatában, hogy ezen elég könnyen tudunk segíteni.
Először is a logónk nevét az egyszerűség és átláthatóság kedvéért át kell nevezzük az országok szerint. Jelen példában Én most létrehozok egy magyar és egy angol logót.
Az eredeti magyar logó eredeti neve: logo.png. Ezt átnevezem a prestashop által használt kétbetűs nyelvi rövidítésre egy alul-vonással kiegészítve: logo_hu.png.
Miután elkészítettem a logó angol változatát, azt is átnevezem a fentiek alapján: logo_en.png-re.
Ezután megkeresem a header.tpl fájlt, ami a logó megjelenítéséért felelős:
themes/temadneve/header.tpl
Majd kikeresem azt a sort amiben a logó van deklarálva (egyszerűbb ha rákeresel a “logo” szóra és meg is lesz):
... class="logo" alt="{$shop_name|escape:'htmlall':'UTF-8'}" src="{$img_ps_dir}logo.png?{$img_update_time}" />
Majd lemódosítom így:
... class="logo" alt="{$shop_name|escape:'htmlall':'UTF-8'}" src="{$img_ps_dir}logo_{$lang_iso}.png?{$img_update_time}" />
Nyilván témától és verziószámtól függően eltérhet a kódod a fentitől, de a lényeg mindenhol ugyanaz:
logo.png
helyett:
logo_{$lang_iso}.png
-t kell írni.
Mit csináltunk?
A logo_{$lang_iso}.png azt jelenti, hogy azt a logo-t használja ami a jelenlegi nyelvnek megfelel. A kapcsos zárójelek közé egy változót tettünk, amiben mindig el van tárolva az éppen használatban lévő nyelv kétbetűs rövidítése. Ha angolra teszem, akkor ezt lesz a változó érteke: “en”.
Tehát ez összességében ezt eredményezi majd: “logo_en.png“.
És mivel mi már okosan létrehoztuk ezzel a névvel az angol logót, ezt fogja betölteni/használni.
Ha kérdésed van ne habozz velem felvenni a kapcsolatot! 🙂