E-CommerceMagento

Magento2 und die lieben Übersetzungen

Benjamin Rosenberger
Benjamin Rosenberger

Kein Shop ist wie der Andere – andere Länder, andere Sprachen und selbst in der gleichen Sprache gibt es Unterschiede (man denke an Kasse vs. Kassa). Somit ist es unabdingbar in Magento2 Übersetzungen zu pflegen und zu verwenden.

Die Magento2 Dev-Docs bieten zur Übersetzung eine ausführliche Beschreibung, wie man sprachabhängige Texte im Shop anzeigen kann. (siehe https://devdocs.magento.com/guides/v2.3/frontend-dev-guide/translations/xlate.html)

Grundsätzlich gibt es wie auch schon in Version 1 von Magento folgende Hierarchie von Übersetzungen:

Magento2 Translation Hierarchie

In obigen Bild ist sehr deutlich wo man als Entwickler die entsprechenden Übersetzungen pflegen kann.

Datenbank?

Doch was ist mit den Datenbankübersetzungen in Magento2? Diese konnten in Magento1 leicht über eine Oberfläche im Admininterface gepflegt werden und somit ohne Dateien zu ändern im laufenden Betrieb ausgetauscht bzw. ausgebessert werden.

Die guten alten Zeiten sind mit Magento2 vorbei, wo direkt am Server Dateien ausgebessert werden und somit steht unausweichlich ein Deploy der aktuellen Module an mit zuvor geänderten Übersetzungstexten. Oder man geht den umständlichen letzten Weg und trägt direkt über ein Datenbank-Tool seiner Wahl die Übersetzung ein. Was kann für einen Shop-Betreiber bloß schiefgehen?

Translations as DB table without view

Einfach Zugriff auf die gesamte Datenbank gewähren, richtige Store-Id eintragen, einen korrekten CRC-String generieren und sich natürlich nicht bei dem ausgebesserten Übersetzungstext verschreiben.
Da habe ich mir gedacht – warum einfach, wenn es auch komplizierter funktioniert? Und so begab ich mich auf die Suche nach einer aktuellen Umsetzung einer View und stieß auf kein vernünftiges Ergebnis.

Es schien mir fast so, dass Datenbankübersetzungen nur noch ein Überbleibsel aus vergangenen Tagen waren. Viele Probleme wurden durch Übersetzungen in der Datenbank verursacht. Es war unübersichtlich wo welche Übersetzung greift – bei mir in der Entwicklung hat er ja auch den richtigen Text. Daher kann ich gut verstehen warum dieses Feature nicht mehr aktiv verfolgt wird.

Und doch gibt es die Möglichkeit!

Trotzdem gibt es Zeiten in denen schnell ein Text im Live-Shop ausgetauscht werden soll. Am Besten ohne dass ein Entwickler eingreifen muss.

Gesagt, getan, hier die View zur Datenbank: https://github.com/e-conomix/magento2-dbtranslations. Einfach über composer installieren und Übersetzungen im Backend eintragen.

DB Translations Modul

So leicht dies auch nun möglich ist – es sollte nur eine Übergangslösung sein! Wie vom Standard vorgesehen gehört jeder Übersetzungstext in eine für ihn vorgesehene Datei (Modul, Language-Pack oder Theme), da uns sonst die Geister aus vergangenen Tagen wieder einholen.

Teile diesen Artikel

Unsere Social Media Accounts

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.