Unterstützte Inhalte
Diese Seite ist die verbindliche Liste dessen, was die Erweiterung übersetzt. Sie gilt für fünf Oberflächen: manuelle Läufe aus dem Assistenten, die Schnellübersetzung, die CLI und beide Automatisierungsarten. Alle nutzen dieselbe Engine.
Die Erweiterung schreibt in die Übersetzungstabellen von Shopware. Ein paralleles Speicherformat gibt es nicht. Ein übersetztes Feld verhält sich deshalb genau wie ein Feld, das Sie selbst in der Administration eingetippt haben.
Inhaltstypen und Felder
Sie wählen aus achtzehn Inhaltstypen: siebzehn Shopware-Entitäten und Storefront-Textbausteine. Inhaltstypen, die Ihr Shop nicht installiert hat, zeigt die Liste nicht an.
| Technischer Name | Bezeichnung in der Administration | Übersetzte Felder |
|---|---|---|
product | Produkte | name, description, metaTitle, metaDescription, keywords, packUnit, packUnitPlural, customSearchKeywords, customFields, Layout-Überschreibungen |
category | Kategorien | name, description, metaTitle, metaDescription, keywords, linkTitle, customFields, Layout-Überschreibungen |
cms_page | Erlebniswelten | name, customFields, die Texte in den Elementen des Layouts |
landing_page | Landingpages | name, metaTitle, metaDescription, keywords, customFields, Layout-Überschreibungen |
product_manufacturer | Hersteller | name, description, customFields |
property_group | Eigenschaften | name, description, customFields |
property_group_option | Eigenschaftswerte | name, customFields |
media | Medien | alt, title |
mail_template | E-Mail-Vorlagen | subject, description, contentHtml, contentPlain |
product_cross_selling | Cross-Selling | name |
delivery_time | Lieferzeiten | name, customFields |
unit | Maßeinheiten | name, customFields |
country | Länder | name, customFields |
salutation | Anreden | displayName, letterName |
currency | Währungen | name, customFields |
payment_method | Zahlungsarten | name, description, customFields |
shipping_method | Versandarten | name, description, customFields |
snippet | Storefront-Textbausteine | value |
Bei Medien schreibt ein Lauf beide Felder: den Alt-Text und den Medientitel.
Die Feldliste ist eine Positivliste. Die Erweiterung schneidet diese Positivliste mit den Feldern, die Ihre Shopware-Version als übersetzbar deklariert. Ein Feld, das es in Ihrer Installation nicht gibt, fällt heraus. Primärschlüssel, berechnete Felder, schreibgeschützte Felder und Fremdschlüssel schließt sie immer aus.
„Layout-Überschreibungen“ sind die Slot-Konfiguration, die ein Produkt, eine Kategorie oder eine Landingpage mitführt, wenn sie ein Erlebniswelten-Layout überschreibt. Derselbe Walker verarbeitet diese Überschreibungen und die Erlebniswelten selbst. Erlebniswelten und Layouts beschreibt diesen Walker.
Storefront-Textbausteine
Shopware speichert Storefront-Textbausteine in Snippet-Sets. Die Erweiterung übersetzt deshalb von einem Set in ein anderes Set. Sprachübersetzungszeilen haben hier keine Funktion.
- Das Quell-Snippet-Set ist das Set, dessen ISO-Code dem aufgelösten Quell-Locale entspricht.
- Das Ziel-Snippet-Set ist das vorhandene Set, dessen ISO-Code dem Ziel-Locale entspricht.
- Die Erweiterung übersetzt jeden Textbaustein des Quell-Sets und schreibt ihn unter demselben Übersetzungsschlüssel in das Ziel-Set. Textbausteine, die das Ziel-Set nicht enthält, legt sie an. Vorhandene Textbausteine aktualisiert sie.
- Geschriebene Textbausteine tragen den Autor
NiceTranslate. Dieser Autorenname trennt sie von Ihren eigenen Anpassungen in der Textbaustein-Verwaltung von Shopware.
Achtung
Die Erweiterung legt niemals Snippet-Sets an. Eine Zielsprache ohne Snippet-Set kann keine Textbaustein-Übersetzungen erhalten. Vor dem Lauf zeigt der Assistent die Warnung Für "…" existiert kein Snippet-Set. Textbausteine können nicht in diese Sprache übersetzt werden. Legen Sie das Snippet-Set zuerst in Shopware an und starten Sie den Auftrag danach erneut.
Wenn mehrere Snippet-Sets denselben ISO-Code haben, nutzt die Erweiterung das älteste Set. Sie nutzt dasselbe Set zum Ermitteln und zum Schreiben, deshalb vermischt ein Lauf nie zwei Sets.
Beim Umfang Nur Einträge ohne Übersetzung gilt ein Textbaustein als fehlend, wenn das Ziel-Set keinen Eintrag für seinen Übersetzungsschlüssel enthält.
Textbausteine enthalten viele Platzhalter (%name%, {0}, %s) und Twig-Fragmente. Die Erweiterung sperrt sie vor der Übersetzung und stellt sie danach wortgetreu wieder her. Wenn ein Anbieter einen davon beschädigt, schlägt der Textbaustein fehl und die Erweiterung schreibt nichts. Siehe Schutzmechanismen.
Übersetzbare Zusatzfelder
Die Erweiterung übersetzt ein Zusatzfeld nur, wenn alle diese Bedingungen erfüllt sind:
- die Definition des Zusatzfeldes ist aktiv,
- ihr Typ ist Text oder HTML,
- und ihre Definition markiert das Feld als übersetzbar (die Option Übersetzbar des Zusatzfeldes).
Alles Übrige in derselben customFields-Struktur bleibt Byte für Byte unverändert: Zahlen, Datumsangaben, Auswahlfelder, Schalter, Entitätsverweise und Textfelder ohne die Markierung „übersetzbar“. HTML-Zusatzfelder gehen im HTML-Modus an den Anbieter, Text-Zusatzfelder als reiner Text.
Die Oberfläche, die den Lauf startet, entscheidet über die Zusatzfelder:
| Oberfläche | Verhalten |
|---|---|
| Assistent | Der Schalter Zusatzfelder einbeziehen auf der Kachel Produkte in Schritt 1. Der Schalter sitzt auf dieser Kachel, steuert aber jeden ausgewählten Inhaltstyp des Laufs. Er ist standardmäßig aktiv. |
| Schnellübersetzung | Zusatzfelder sind immer einbezogen. |
| Automatisierung und CLI | Zusatzfelder sind einbezogen, weil das die Voreinstellung einer Auftragskonfiguration ist. |
| Dauerhaft | Fügen Sie customFields bei einem Inhaltstyp unter Einstellungen → Erweitert → Ausgeschlossene Felder hinzu. Der Editor kennzeichnet diesen Eintrag mit (alle Zusatzfelder). |
Erlebniswelten und Layouts
Ein generischer Walker über die Slot-Konfiguration übersetzt die CMS-Inhalte. Der Walker entscheidet anhand von Schlüsselnamen und Wertformen, was er übersetzt. Elementtypen haben für diese Entscheidung keine Funktion, deshalb erfasst der Walker auch kompatible CMS-Elemente von Drittanbietern, ohne sie zu kennen.
Der Walker prüft ausschließlich Konfigurationseinträge mit der Quelle static, also wörtliche Werte, die Sie in das Layout eingetragen haben. Einen Eintrag, der auf ein Produkt, eine Kategorie oder eine andere dynamische Quelle verweist, schreibt er nie um.
Unter diesen statischen Einträgen gilt ein Wert als Text, wenn sein Schlüssel content, text, title, subTitle, subtitle, description, label, buttonText, linkText, altText, placeholder, tagline, quote oder author lautet. Jeder weitere statische Zeichenkettenwert mit Markup zählt ebenfalls als Text. Werte mit einem HTML-Tag gehen im HTML-Modus an den Anbieter, alle anderen Werte als reiner Text.
Der Walker schließt in jedem Lauf diese Dinge aus:
- Schlüssel, die Verweise oder Darstellungswerte enthalten:
url,media,mediaId,mediaUrl,color,backgroundColor,cssClass,class,elementId,icon,iconName,videoId,navigationId,categoryId,productId,productStreamId,code. - Werte in der Form einer URL (
http://…,https://…oder protokollrelativ//…). - Werte in der Form einer Kennung: eine Hexadezimalzeichenkette mit 32 Zeichen.
- Werte, die nur Ziffern enthalten, und Werte, die mit
#beginnen, denn das sind Farben. - Kurze, CSS-artige Werte unter
cssClass,class,verticalAlign,displayMode,boxLayout. - Leere Werte und Werte, die nur aus Leerzeichen bestehen.
Der Walker trifft die Entscheidung „fehlt noch“ je Texteinheit. Eine bereits übersetzte Überschrift hält deshalb die Übersetzung des Fließtextes im selben Element nicht auf.
Die Erweiterung kann die gesperrten System-Layouts von Shopware nicht schreiben, deshalb schließt jeder Lauf sie aus. Auch die Eintragszahl des Assistenten für Erlebniswelten schließt sie aus. Die Abdeckungsmatrix im Dashboard ist die Ausnahme: Ihr Wert Gesamt zählt jede cms_page-Zeile der Live-Version, gesperrte Layouts eingeschlossen. Siehe Abdeckungsbericht.
Achtung
Der Walker beurteilt jeden Eintrag an seinem Schlüsselnamen und seiner Wertform und kennt die einzelnen Elementtypen nicht. Damit erfasst er die Standardelemente und kompatible Elemente von Drittanbietern. Eine ungewöhnliche eigene Datenstruktur kann trotzdem Text an einer Stelle führen, an der die Heuristiken keinen Text erwarten, oder einen technischen Wert dort, wo sie Text erwarten. Testen Sie ein repräsentatives Layout in einem Staging-Shop, bevor Sie einen Massenlauf starten. Lassen Sie den Übersetzungsverlauf aktiviert, damit Sie einen Lauf feldgenau zurücknehmen können.
Landingpages
Landingpages sind ein vollwertiger Inhaltstyp. Ein Lauf übersetzt name, metaTitle, metaDescription, keywords und die übersetzbaren Zusatzfelder, dazu die Layout-Überschreibungen, die der Walker verarbeitet.
Die Abdeckungsmatrix im Dashboard enthält keine Landingpages. Sie berichtet nur über Produkte, Kategorien, Erlebniswelten und Storefront-Textbausteine. Siehe Abdeckungsbericht.
Was die Erweiterung nie übersetzt
| Nicht übersetzt | Warum |
|---|---|
| Inhaltstypen außerhalb der Tabelle oben: Bestellungen, Kunden, Dokumente, SEO-URLs und alle weiteren | Sie stehen nicht in der Registry der Erweiterung. Die Erweiterung liest Bestell- und Kundendaten nie für die Übersetzung. |
| Felder außerhalb der Positivliste des jeweiligen Inhaltstyps | Nur die aufgeführten Eigenschaften kommen infrage, selbst wenn Shopware weitere als übersetzbar deklariert. |
| Primärschlüssel, berechnete Felder, schreibgeschützte Felder, Fremdschlüssel | Die Erweiterung schließt sie strukturell aus. |
| Felder, die Sie unter Einstellungen → Erweitert → Ausgeschlossene Felder eintragen | Ein harter Ausschluss, in jedem Auftrag und in jedem Automatisierungslauf. |
| Zusatzfelder, die nicht Text oder HTML, nicht aktiv oder nicht als übersetzbar markiert sind | Siehe Übersetzbare Zusatzfelder. |
| Mediendateien, URLs, Farben, CSS-Klassen, Element- und Entitäts-IDs in Layouts | Der CMS-Walker schließt sie aus. |
| Platzhalter, Twig-Fragmente und URLs innerhalb eines übersetzten Textes | Die Erweiterung sperrt sie vor dem Aufruf und stellt sie wortgetreu wieder her, deshalb ändert sich ihr Inhalt nie. |
| Snippet-Sets und Sprachen | Die Erweiterung schreibt in die vorhandenen und legt keine an. |
Eine Deinstallation behält jede Übersetzung, die die Erweiterung geschrieben hat, denn es sind native Shopware-Übersetzungen. Die Erweiterung löscht nur ihre eigenen Daten (Aufträge, Fehler, Verlauf, Glossar, Verbrauch und Einstellungen), und auch das nur, wenn Sie die Benutzerdaten nicht behalten.
Verwandte Seiten
- Übersetzungsassistent für die Inhaltstypen, den Umfang und den Schalter für Zusatzfelder.
- Schutzmechanismen für den Platzhalterschutz, die HTML-Regeln, den Schutz manueller Änderungen und die SEO-Längenbegrenzungen.
- Übersetzungsverlauf für den feldgenauen Weg zurück, wenn ein Lauf ein falsches Ergebnis liefert.