{"id":9965,"date":"2020-02-06T08:26:17","date_gmt":"2020-02-06T07:26:17","guid":{"rendered":"https:\/\/eurotext.de\/?page_id=9965"},"modified":"2020-02-06T09:17:06","modified_gmt":"2020-02-06T08:17:06","slug":"oxid","status":"publish","type":"page","link":"https:\/\/eurotext.de\/dk\/dokumentation\/oxid\/","title":{"rendered":"Doku: translationMANAGER f\u00fcr OXID"},"content":{"rendered":"
<\/p><\/div> <\/div> <\/div>\n
<\/p>\n
Das Modul ben\u00f6tigt folgende DB-Tabellen, um seine Daten zu organisieren:<\/p>\n
Eine \u00dcbersetzung wird im Rahmen eines Projekts abgearbeitet. Ein Projekt enth\u00e4lt, mit Ausnahme des Projektnames, haupts\u00e4chlich technische Informationen. Hierzu geh\u00f6ren IDs im Lokal- und Fernsystem, Ausgangs- und Zielsprachen, Zeiten der Ver\u00e4nderung und interne Statistiken.<\/p>\n
Das Projekt kann mittels einer N-zu-M Beziehung einem Produkt, einem Attribut, einer Kategorie oder einer Inhaltsseite zugeordnet werden. Einem Projekt k\u00f6nnen also mehrere Kategorien zugeordnet werden und einer Kategorie mehrere Projekte. Diese Zuordnung referenziert lediglich das Projekt mit der Zielzeile der entsprechenden Tabelle.<\/p>\n
Das Modul kommuniziert mit der Eurotext Translation API. Nach dem Export werden bei Eurotext im entsprechenden Projekt sogenannte Items angelegt. Der translationMANAGER richtet sich w\u00e4hrend des Importes an diese Items und erstellt anhand dieser eine Importliste. Jedes Element dieser Importliste ist eine Zeile innerhalb der Tabelle ettm_importjobs<\/em> und enth\u00e4lt die ID des Items bei Eurotext.<\/p>\n Beim Export wird die Liste der ausgew\u00e4hlten Elemente iteriert. Jedes Element hat innerhalb der Datenbank eine eigene Haupttabelle und ggf. mehrere Zusatztabellen. Hierbei speichert die Haupttabelle beispielsweise die Namen der Attribute, die Zusatztabelle enth\u00e4lt die Werte der Attribute.<\/p>\n F\u00fcr jede Tabelle jedes Elements wird ein Item erstellt. Ein Item ist ein JSON Objekt. Falls die \u00dcbersetzung schon vorhanden ist und laut Projekteinstellungen die bereits \u00fcbersetzten Items \u00fcbersprungen werden m\u00fcssen, wird das Item als “skipped” markiert. Die Tabelle und die ID der Zeile werden in Meta \u00fcbergeben.<\/p>\n Sobald die Item-Liste erstellt ist, wird jedes Item \u2013 eines nach dem anderen \u2013 an Eurotext geschickt. Dabei werden erfolgreiche\/fehlerhafte \u00dcbertragungen sowie \u00fcbersprungene Items gez\u00e4hlt. Diese Z\u00e4hler werden verwendet, um den Projektfortschritt zu berechnen.<\/p>\n Beim Import werden zun\u00e4chst alle Items des Projekts ausgelesen. Dadurch entsteht eine Import-Liste.<\/p>\n Danach wird jedes einzelne Item in dieser Liste von der Eurotext Translation API heruntergeladen und die \u00fcbersetzten Felder in der Zieltabelle werden \u00fcberschrieben.<\/p>\n Um die Belastung des Shopsystems konstant zu halten, werden Importe und Exporte komplett asynchron abgearbeitet. Daf\u00fcr sind Cron-Jobs einzurichten. Jeder Job nimmt X Elemente pro Aufruf und verarbeitet diese. Durch die Einstellung der pro Aufruf zu verarbeitenden Elemente kann ein Optimum zwischen Belastung und Geschwindigkeit gefunden werden.<\/p>\n Es gibt insgesamt 3 Cron Jobs. Die Aufgaben werden in PHP Dateien erledigt. Man kann sie sowohl auf dem Server ausf\u00fchren, als auch \u00fcber direkten Browseraufruf:<\/p>\n Es ist nicht vorgeschrieben, wie oft sie aufgerufen werden m\u00fcssen. Jedoch sollte das Intervall so gew\u00e4hlt werden, dass keine unn\u00f6tigen Ressourcen belegt werden. Wir empfehlen ein Intervall von 30 min f\u00fcr den Import Cron-Job<\/strong>, bis das Projekt abgeschlossen ist.<\/p>\n Als Export ist die \u00dcbertragung der einzelnen Elemente an Eurotext zur \u00dcbersetzung zu verstehen. Damit ein Export stattfinden kann, muss zuerst ein Projekt angelegt werden.<\/p>\n Daf\u00fcr klickt man in der Men\u00fcnavigation auf “Translationmanager > Export” oder auf einer Projektdetailseite im unteren Bereich der Seite auf “Neues Projekt” .<\/p>\n\n <\/p>\n Danach muss zwingend ein Projektname angegeben werden. Es muss mindestens eine Zielsprache ausgew\u00e4hlt sein. Optional k\u00f6nnen weitere Zielsprachen ausgew\u00e4hlt werden.<\/p>\n\n <\/p>\n Wenn man einen Projektnamen vergeben und Zielsprache(n) ausgew\u00e4hlt hat, kann das Projekt gespeichert werden. Beim Speichern wird das Projekt sowohl in der internen Shopdatenbank gespeichert, als auch in der Eurotext API-Datenbank angelegt und mit dem lokalen Eintrag verlinkt.<\/p>\n\n <\/p>\n Nach dem Speichern erscheint das Projekt in der Projektliste im oberen Teil des Bildschirms. Der Status lautet nun “Neu”. Im mittleren Teil des Bildschirms wird ein neuer Bereich aktiv und sichtbar: “Elemente f\u00fcr \u00dcbersetzung ausw\u00e4hlen”.<\/p>\n\n <\/p>\n Hier k\u00f6nnen Kategorien, Attribute, Artikel und CMS-Seiten ausgew\u00e4hlt werden. Daf\u00fcr klickt man auf den Link unter der entsprechenden Headline, z.B. “Artikel ausw\u00e4hlen”. Es erscheint ein Popup, in dem man die einzelnen Elemente durch drag&drop ausw\u00e4hlen kann.<\/p>\n\n <\/p>\n Sobald man mindestens ein Element ausgew\u00e4hlt hat, wird ein neuer Bereich aktiv: “Daten \u00fcbermitteln”.<\/p>\n\n <\/p>\n Hier kann man festlegen, ob alle ausgew\u00e4hlten Elemente \u00fcbersetzt werden sollen oder nur die, die noch keine \u00dcbersetzung haben.<\/p>\n ACHTUNG:<\/span><\/strong> Falls die Einstellung “Bereits \u00fcbersetzte Elemente \u00fcberspringen” NICHT<\/strong> ausgew\u00e4hlt wird, werden beim Import bereits existierende \u00dcbersetzungen in den vorhandenen Datenbankfeldern \u00fcberschrieben.<\/p>\n Starten Sie den Export \u00fcber den entsprechenden Bereich “Export starten”<\/p>\n ACHTUNG:<\/strong> <\/span>Sobald der Export gestartet wurde, kann die Auswahl nicht mehr editiert werden.<\/p>\n\n <\/p>\n Nun werden die ausgew\u00e4hlten Elemente markiert. Dadurch kann der Cron-Job sie erfassen und an Eurotext \u00fcbermitteln. Das Projekt selbst bekommt den Status “Export l\u00e4uft” und es wird der Fortschrittsbalken angezeigt. Im mittleren Bereich wird ein neuer Bereich sichtbar: “Status”. Hier sieht man den Verlauf des Exports in Zahlen.<\/p>\n\n <\/p>\n Sobald der Export abgeschlossen wird, wird der Projektstatus auf “Exportiert” ge\u00e4ndert und im mittleren Bereich wird der Bereich “\u00dcbersetzung starten” sichtbar.<\/p>\n Wenn der Export abgeschlossen ist, wurden alle Elemente an die Eurotext Translation API \u00fcbermittelt. Klicken Sie auf “\u00dcbersetzung starten”, um das \u00dcbersetzungsprojekt zu beginnen.<\/p>\n\n <\/p>\n Das Projekt bekommt nun den Status “\u00dcbersetzung l\u00e4uft” und der Fortschrittsbalken wird angezeigt.<\/p>\n\n <\/p>\n Sobald die \u00dcbersetzung fertig ist, wird das Projekt nicht mehr in der Liste bei “Export” angezeigt. Stattdessen erscheint er nun in der Projektliste unter “TranslationManager > Import” und ist bereit f\u00fcr den Import.<\/p>\n Sie erhalten au\u00dferdem eine Information vom Eurotext Projektteam, dass die \u00dcbersetzung geliefert wurde und importiert werden kann.<\/p>\n\n <\/p>\n Um den Import zu starten, muss auf den Button “Import starten” geklickt werden.<\/p>\n\n <\/p>\n Das setzt den Status auf “Import l\u00e4uft”. Im Hintergrund werden einzelne Items von Eurotext heruntergeladen und in die lokale Datenbank geschrieben. Es sind keine weiteren Arbeitsschritte notwendig.<\/p>\n\n <\/p>\n Sobald der Import abgeschlossen ist, bekommt das Projekt den Status “Importiert”.<\/p>\n\n <\/p>\n Die \u00dcbersetzungen liegen nun in Ihrem OXID 6 Shop vor.<\/p>\nExport<\/h3>\n
Import<\/h3>\n
Asynchrone Verarbeitung<\/h3>\n
\nEinrichtung der Cron Jobs<\/h2>\n
\n
\n
\nBenutzerdokumentation<\/h2>\n
Export<\/h3>\n
\u00dcbersetzung starten<\/h3>\n
Import<\/h3>\n