Beschreibungen pro Storefront/Sprache pushen #17
Labels
No labels
API
Artikel
B2B
B2C
Bestandssync
Bestellungen
DACH
DocType
Dokumentation
Grundgerüst
Import
Kategorien
Kunden
Lager
Mapping
Mehrsprachigkeit
Performance
Preise
Push
Scheduler
Schweiz
Steuern
Storefront
Sync
Varianten
Verbindung
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
Frappe-Projekte/ecommerce_integrations#17
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Produktbeschreibungen sprachspezifisch nach Shopware pushen:
PATCH /api/product/{id}/translations/{languageId}Implementiert (
shopware6/api/translation.py,push_translations()).Abweichung vom im Issue genannten Endpunkt:
PATCH /api/product/{id}/translations/{languageId}funktioniert live nachweislich nicht wie im Issue beschrieben — dielanguageIdaus der URL wird beim Schreiben stillschweigend ignoriert, jeder Aufruf landet im selben (offenbar Default-)Übersetzungs-Slot. Ein zweisprachiger Live-Test (zwei PATCHes mit unterschiedlicherlanguageIdauf dasselbe Produkt) hat das eindeutig gezeigt: danach existierte nur eineproduct-translation-Zeile, mit dem Inhalt des zweiten Aufrufs. Bestätigt über einen gezielten Retest mit klar unterscheidbarem Inhalt.Verwendeter Ansatz stattdessen:
PATCH /api/product/{id}(Hauptendpunkt) mit einem verschachteltentranslations-Objekt, geschlüsselt nach Sprach-UUID, alle konfigurierten Sprachen in einem Aufruf pro Item. Entspricht dem offiziellen "Product Translator"-App-Tutorial (das Locale-Codes statt UUIDs nutzt) sowie Marcels Bulk-_action/sync-API (die UUID-Keys dokumentiert). Live mit zwei Sprachen verifiziert: zwei korrekte, sprachspezifischeproduct-translation-Zeilen pro Produkt.Weitere Punkte:
Item:meta_title,meta_description(ERPNext-Core hat dafür kein natives Feld, live perfrappe.get_meta("Item")geprüft).Shopware Storefront Domain.shopware_language_id(#7/#11) — keine Live-Auflösung pro Push nötig, da bereits persistiert.Itemkeine sprachspezifischen Felder hat, wird derselbe Name/Beschreibung/Meta-Inhalt in jeden konfigurierten Sprach-Slot geschrieben — #17 verteilt bestehenden Inhalt auf Storefront-Sprachen, übersetzt ihn nicht.shopware_product_id(#16); ohne diese:skipped_not_pushed, keinfailed.Shopware Account.Volle Begründung: docs/architecture.md#issue-17, Gotcha-Eintrag: docs/stolperfallen.md.
Live-Round-Trip erfolgreich getestet (Testdaten danach entfernt). Deploy auf den 4 App-Containern durchgeführt.