Sprachen in der Datenbank

Hallo,

ich beschäftige mich derzeit mit Oxid, da meine Firma wohl demnächst auf den Zug aufspringen wird (sofern alles von meiner Seite aus passt). Nun habe ich bereits 3 Module für unseren Shop geschrieben - beim 4. Modul stehe ich nun vor einem kleinen Verständnis-Problem.

Ich kann mir zwar die Sprachen über das OXLANG Object daher holen - allerdings würde ich gerne wissen, wie das ganze mit den Sprachen überhaupt funktioniert?

Wo sind die Sprachen in der Datenbank gespeichert (verwende hier eine EE Demoversion)?

Ist es möglich eine eindeutige Zuordnung von “Felder” zu Sprachen zu bekommen - sprich ein Artikel hat ja z.b. die Felder OXTITLE, OXTITLE_1, OXTITLE_2, etc.
Nun möchte ich mir eine bestimmte Sprache daher holen - z.b. die Sprache mit der ID 3 um dann die anderen Felder zu übersetzen.

Das ganze kann man sich ungefähr so vorstellen:
Ich habe einen Store erstellt (Muttershop) welcher nur Konfigurationsparameter beinhaltet - sprich Artikel werden in diesem Store mit Übersetzungsvariablen z.b. gespeichert.

Das Modul welches ich nun gerade am schreiben bin, soll nun über alle Übersetzungsvariablen der entsprechenden Sprache (z.b. den Titel aus der OXTITLE_2) auslesen - unserer Übersetzungsdatenbank übergeben und anschließend die anderen Sprachen dementsprechend richtig befüllen mit den Übersetzten Werten.

Für diesen Fall wäre es mich dringend notwendig herauszufinden woher die Sprachen kommen und wo diese gespeichert sind - bzw. wenn diese nicht in der Datenbank gespeichert sind - wo werden die Optionen ob eine Sprache z.b. aktiv ist am Frontend gespeichert?

lg
Manuel

:confused:

klingt für mich irgendwie umständlich…

Der Oxid Shop ist doch bereits Multilanguage-fähig, warum bastelst Du Dir eine eigene Lösung?

Nicht falsch verstehen - ich bastel da eigentlich gar nix drum herum…

ich verwende die ganz normale multilang fähigkeit von oxid - das einzige was dann anderst abläuft ist z.b. dieser ablauf:

Im “Config”-Store wird der Artikel “xyz” angelegt.

Dieser Artikel bekommt als Titel z.b. [XXX,203,123] => also einfach einen sogenannten “Stockcode” welcher eine eindeutige ID besitzt und aus der Übersetzungsdatenbank welche wir schon in der Firma haben automatisch sich die Übersetzung holt und anschließend in den entsprechenden Sprachen abspeichert.

Also in diesem Fall z.b. würde ich anschließend wenn ich alle Artikel angelegt habe einmal mein Modul anschmeisen und schon würde folgendes dabei rauskommen:

OXTITLE = [XXX,203,123]
OXTITLE_1 = titel auf deutsch
OXTITLE_2 = titel auf englisch
OXTITLE_3 = titel auf französisch
usw.

also eigentlich möchte ich damit nur dem administrator arbeit ersparen - und trotzdem sichergehen können dass wenn in unserer übersetzungsdatenbank korrekturen gemacht werden dass die mit einem klick im store übernommen werden.

so nun wäre das ganze ja nicht wirklich das problem - ich kann mir ja meine übersetzungen holen und abspeichern kann ich diese auch aber mir fehlt genau eine entscheidende sache:

a) ich muss zuerst mal auslesen welche sprache welche ID im oxid hat (ich brauch ja schließlich eine zuordnung was OXTITLE_1, OXTITLE_2, usw. sind => wenn ich nun in einer funktion sehen würde die Sprache Deutsch z.b. hat die ID 1 - dann weiss ich auch dass OXTITLE_1 mit der deutschen übersetzung befüllt wird.

Und damit ich das ganze machen kann brauche ich eine Information welche Sprache , welche ID hat - so nun könnte ich wie ich das gesehen habe das ganze ja lockerlässig über die OXLANG machen und mir einfach alle LangIDs damit holen - trotzdem möchte ich das System hinterfragen und wäre daran interessiert woher diese informationen kommen.

Woher kommen die Rot markierten Informationen?

bild upload

und woher kommt die Liste mit den Sprachen?

Ich kann diese nicht in der Datenbank finden - kann es sein dass für die Sprachen irgendwo ein Konfigurationsfile erstellt wird?!?

lg
Manuel

:smiley:

ah jetzt ja…

Wenn mich nicht alles täuscht liegen die in der Tabelle oxconfig und leider als BLOB

ein direkter Zugriff auf die DB solltest du sein lassen.
Es sollte immer versucht werden, das Shopframework zu nutzen.

Schau ditr die diversen Getter der oxlang an.

Hi!

also zuerst mal danke für die Hilfe :wink:

@d3:
das hätte ich eh nicht vor gehabt - mir ist es rein ums prinzip gegangen - bin ja am evaluieren und nachdem ich bisher so ziemlich alles recht einfach gefunden habe, wollte ich nun die oxlang einfach mal hinterfragen!

lg
Manuel