Többnyelvű WEBShop - Termékek fordítása

Chamber képe

Hali!

Többynyelvű webshopot szeretnék csinálni (Angol/Német/Magyar egyenlőre). Az ÜberCart (továbbiakban ÜC) telepítés beállítások mennek is, a felület fodításokat is importáltam, úgyhogy az ÜC felülete is majdnem teljesen magyar.
A fő probléma, hogy ha a Termék/Product node-okat lefordítom, úgy ahogy azt felajánlja az admin felület akkor a váltogatás a különböző nyelvű termékek között tökéletesen működik is... DE ha a kosárba rakom a magyar "almát" majd utána az angol "apple" fordítását, akkor ez 2 külön termékként jelenik meg :(

Próbálkoztam e-Commerce modullal is, de ottis ugyanez a helyzet.

Próbáltam mind Drupal 5.12 alatt (l18n-at használva fordításhoz) mind Drupal 6-al (beépített alap Locale modullal).

Gondolom azért működik így mert a fordítások mind külön új node-ként jönnek létre és a webshop modulok meg a node ID alapján döntik el hogy micsoda egy termék? Pedig ÜC/e-C-nél is van a terméknek valami SKU kódja amit kötelező kitölteni és elvileg az lenne a raktári/modellszám. Én azt hittem ez fogja azonosítani a terméket (a fordításoknál ugyanazt az SKU-t adtam meg ugyanarra a termékre).

Valakinek sikerült már megoldani esetleg ilyen problémát? Teljesen máshogy kéne a fordításokat megoldani? Vagy a webshop modulokat kell a fejlesztőknek felkészíteni a több nyelv támogatására? (most kezdem a Drupal-t, szóval én nem fogom meghackelni a modulokat... még x)

Köszi a türelmet!
Üdv, Chamber

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
aries képe

Vagy a webshop modulokat kell a fejlesztőknek felkészíteni a több nyelv támogatására?

Igen.
Számomra nem túl életszerű, hogy magyarul és angolul is megvásárolom a terméket. Jelenleg saját megoldásokkal tudsz jól működő többnyelvű webshopot készíteni, gondolok itt a pénznem, csatolt fájlok stb. kezelésére.

0
0
fox mulder képe

Kifejtenéd bővebben, mit értesz saját megoldások alatt?

0
0

Fox Mulder

aries képe

Ha lesz időm, egy külön cikkben talán. De ha konkrétat kérdezel, akkor igyekszem válaszolni, ha tudok.

0
0
fox mulder képe

Hali!

Én is nyűglődöm kétnyelvű webshop-pal (D5, Übercart, Localizer), ezért érdekel a dolog. Pontosan mit értesz az alatt, hogy két külön dologként jelenik meg? Más a neve, node id-je, de az ára, cikkszáma (SKU) ugyanaz nem? Akkor az nem egy termék? Vagy EGY kosárba rakod a terméket és a fordítását is? Miért tudod elérni mindkettőt? Úgy értem, az angol nyelvű felhasználó miért vásárolhat magyar nyelvű terméket?

0
0

Fox Mulder

Chamber képe

Ha létrehozok egy új terméket pl magyarul akkor létrejön hozzá az új node (mondjuk node/10), ha ezt lefordítom angolra akkor generál neki egy új node-ot (lesz node/11). És valahol megjegyzi, hogy a 11-es node a 10es angol fordítása. Az SKU-t, árat stb ugyanarra állítom mindkét node-nál.

Namost a felhasználó tud váltani nyelvet az oldalon ugyebár... kosaram viszont csak egy, nincs külön angol/magyar kosár.
Ha magyar nyelven áll, akkor csak a magyar termékek látszanak ha angolon akkor az angolok, ez eddig rendben van. De ha berakja a magyart a kosárba majd vált nyelvet angolra és aztis berakja, akkor 2 sor lesz a kosárban, nem pedig a rendelt mennyiséget növeli meg 1-el (ahogy azt tenné, ha ugyanazt a terméket mégegyszer berakja valaki a kosárba).

Úgynézem a kosár működését kéne valahogy meghackelni, hogy nyelvváltásnál fordítsa le a saját tartalmát!? Pl berakok 1x almát váltok angolra >> kosár megkeresi a megfelelő másik node-ot és lecseréli apple-re... így ha most hozzáadok 1x apple-t akkor nem 1x alma + 1x apple lesz benne hanem 2x apple. Ha visszaváltok magyarra akkor meg 2x alma.

A te oldalad hogy működik? Mert ha nemis rakok ki nyelvválasztó blokkot, a felhasználó mindenképp be tudja állítani a saját nyelvét csak kicsit körülményesebben (saját beállítások).
Vagy nálad a felhasználó NEM tud nyelvet állítani hanem mondjuk az admin mondja meg hogy ki milyen nyelven lássa az oldalt? Ez lenne a megoldás? 0_o

Más a neve, node id-je, de az ára, cikkszáma (SKU) ugyanaz nem? Akkor az nem egy termék?
Én is azt hittem hogy az SKU dönti el hogy mi "egy termék", de úgylátszik ehelyett a node-ID dönt.

0
0
fox mulder képe

Nálam az van, hogy a domainnév dönti el az oldal nyelvét és a felhasználók nem választhatnak nyelveket (azért mert nincsenek felhasználók, de ha lennének sem választhatnának). Az angol verzióban nem is látszik, hogy van "alma", csak az "apple". Persze minden termék le van (lesz) fordítva minden nyelvre. A D5, Localizer, Übercart trió tök jól működne, ha a "Catalog"-ot is a nyelvnek megfelelően fordítaná le...

0
0

Fox Mulder

Chamber képe

Értem, akkor maradok énis szerintem ennél a megközelítésnél "többnyelvű oldal, de egyszerre csak 1 nyelven látható minden" :)
Az adminnak (ill. a tartalomért felelős szerkesztő(k)nek) lesz csak többnyelvű, hogy meg tudják csinálni a fordításokat, a felhasználók pedig _csak_ a saját nyelvükön fogják látni.

Kösz a tippet!

UI.: A katalógus nevét nem tudod lefordítani? Ilyet már olvastam valahol a fórumban énis azt hiszem. Valahogy azt hiszem meg lehet csinálni... ha megtalálom szólok.

0
0
sgabe képe

Akkor Muldernél a kényszerített (domain alapján történő) nyelvválasztás miatt nem tűnik fel az általad említett hiba. Ha külön aldomaineket használsz az egyes nyelvekhez és a kosár által létrehozott süti eszerint tárolja az infókat akkor "több" kosarad is lesz, mert csak a saját sütijükhöz férnek hozzá. Csak egy hirtelen ötlet, de egy próbát megérne szerintem.

0
0
Chamber képe

Köszi!
Ki fogom próbálni ezt is, de szerintem majd csak jövő héten. Melóban kéne webshopot csinálnom a cégnek, és már vége a hétnek! Végre :D

0
0
fox mulder képe

Szia sgabe!

Egy szót sem értek: ez most különbözik az én megoldásomtól? Vagyis:
Mulder: "kényszerített nyelvválasztás", "fel nem tűnő EGY kosár"
Chamber: "külön aldomainek", "több kosár"

0
0

Fox Mulder

Pasqualle képe

a hiba attol, hogy nem latszik meg hiba marad. Ha D6-os ubercartnal is ez a jelenseg, akkor ezt meg kellene majd egyszer oldani. Ugyanez a problema nalam is elojott amikor az EZShop-ot portoltam. A legegyszerubb otlet az volt, hogy a node ID helyett translation ID-t kell menteni, igy nem lesz egy termekbol ketto, es a kosarat mindig az adott nyelven kell megjeleniteni.
ha valaki leteszteli D6-os ubercart-al, hogy ez a hiba meg mindig eloall, akkor felveszem nekik hibanak es megirom ezt a lehetseges megoldast..

0
0
fox mulder képe

Például a Katalógus blokkban, ha engedélyezve van az egy kategóriába tartozó termékek számának megjelenítése. Fordításonként plusz egy termék.

0
0

Fox Mulder

Chamber képe

Igen, mint írtam:

Próbáltam mind Drupal 5.12 alatt (l18n-at használva fordításhoz) mind Drupal 6-al (beépített alap Locale modullal)

Perpill a Drupal 6-os van fent, azzal próbálkozom megoldani valahogy (mivel egyikben sem megy, és ez az újabb, gondolom ezzel van értelme foglalkozni)
Azt azért hozzá kell tenni, hogy a D6-os ÜC még csak egy dev snapshot! Szóval lehet hogy már dolgoznak a problémán...

Ez a translation ID-s ötlet tetszik, kár hogy kezdő vagyok drupalban meg PHP-ben is.
De azért legalább programozó, szóval valahogy neki állok majd meghackelni az ÜC vonatkozó részét szerintem x)
Vagy esetleg az SKU-t kéne menteni? Mért nem az azonosít alapból egy terméket?! Nekem a leírása ezt sugallta :/
Valaki magyarázza már el mire jó/mi ez az SKU akkor? :)

0
0
fox mulder képe

Hali!
[akkor érvényes, ha a felhasználók nem válthatnak nyelvet és használni szeretnéd a katalógus blokkot]
Én egyelőre úgy oldottam meg (D5, Übercart, Localizer), hogy az Uc által a telepítésekor létrehozott Catalog szótáron belül nyelvenként létrehozok egy-egy Termékek (Products stb) kifejezést, majd ebbe pakolom a termékkategóriákat:
Catalog:
- Termékek
-- Zöldségek
-- Gyümölcsök
--- Apple
--- Pear
--- Orange
- Products
-- Vegetables
-- Fruits
--- Alma
--- Körte
--- Narancs
Alapból csak egy katalógus blokkom lehetne (amit ráadásul a Localizer nem is tud lefordítani), ezért a Multi Catalog Menu modullal (ez nem szótárnevet használ, hanem kifejezést) létrehozok nyelvenként egyet és beállítom, hogy csak akkor látszódjon, ha ez a php kód igazat ad vissza:

global $locale;
if($locale=='en') return TRUE;
return FALSE;

Így érem el azt, hogy csak én és a Localizer tudjuk, hogy az Alma=Apple. A felhasználók pedig (mivel nem válthatnak nyelvet) vagy csak Almával, vagy Apple-lel találkoznak. Így is hiba a hiba (vagyis az, hogy az Üc számára nem ugyanaz az Apple meg az Alma), de így se a blokkban nem jelenik meg (egy kategóriában nincs Alma és Apple IS), se a kosárban.

UI.: Még egy kis pucolás: Egyedül a breadcrumbban marad lefordíthatatlan a katalógus neve (legalábbis Localizer használatával) és ilyen útvonal is szerepelhet benne: Home >> Catalog >> Products >> Vegetables, ami hülyén néz ki (mert a Products valójában magát a katalógust jelenti csak különböző nyelveken) ezért némi hackeléssel kiveszem a szótárnév kiírásáért felelős sorokat az uc_catalog.module fájlból.

0
0

Fox Mulder

fox mulder képe

...megírnád? Én kezdem feladni :(

0
0

Fox Mulder

uniquevisitor képe

sziasztok, kijött az üc 2.0 béta. Próbálta már valaki? Abban is problémás a többnyelvű shop?

0
0
fox mulder képe

Legalábbis még :(
Én most úgy csináltam, hogy egy a kódbázis, de az adatbázisok nyelvenként külön vannak. Szerencsére kevés termékem van, így nem túl nagy ár, hogy az azonos termékeket többször kell felvinni (a szöveges adatokat úgyis le kellene fordítani). Sajnos a minden nyelven azonos adatokat is (pl.: ár euróban, méretadatok, SKU, kép, stb).

0
0

Fox Mulder