Neu Fehler in: JTL Exportformat Google Shopping v2.2.0, Bereich: Exportformat Google Review XML

Marco Stark

Aktives Mitglied
18. Oktober 2014
17
2
Hallo liebes Dev-Team, Hey Felix @FMoche

Bei der Einrichtung des Review Feeds im Google Merchant Center ist unser Feed mit mehreren Fehlern als "invalid" eingestuft, respektive abgelehnt worden. Bei der Überprüfung der ursächlichen "GoogleReviewXML.php" im Ordner "jtl_google_shopping/Exportformat/" ist mir ein Fehler aufgefallen. Weiterhin gibt es Verbesserungspotenzial im Bereich der XML-Knoten: title, content und product_name.

Fehler
Im Übergang/Zeilenumbruch von Zeile 22 zu 23 ist euch ein Leerzeichen zu viel rein gerutscht. Hinter dem = Zeichen in Zeile 22 sollte direkt der String aus Zeile 23 folgen. Aktuell befindet sich in Zeile 23 aber ein Leerzeichen am Anfang.
Original: https://gitlab.com/jtl-software/jtl...aster/Exportformat/GoogleReviewXML.php#L20-23

Lösung
Um den Code etwas lesbarer zu machen, war ich mal so frech und habe die Schema Namespace/Instance Namespace optimiert sowie den Leerzeichenfehler behoben:
Patch: https://gist.github.com/muemarco/19fce9ab05c0abee18b077b4a3234a22#file-googlereviewxml-php-L20-L23



Verbesserungspotenzial (XML-Knoten)
Die Inhalte der folgenden XML-Knoten werden mit "user generated content" befüllt. Hier ergibt sich die Herausforderung, dass speziell in den Knoten title und content von unseren Kunden oft Steuerzeichen in die Produktbewertungen getippelt werden. Das beliebteste ist "&". Das gleiche gilt für den Knoten product_name. Sofern das passiert, validiert der Feed nicht mehr.

Lösungsvorschlag
Das Problem lässt sich mittels CDATA-Abschnitten unkompliziert lösen. Die Datentypen der genannten XML-Knoten sind in der product_reviews.xsd mit "nonEmptyStringType" angegeben, validieren daher erfolgreich gegen die eingefügten CDATA-Abschnitte. Hier die geänderten Zeilen in der Datei "GoogleReviewXML.php":

title-Knoten, Zeile 261
Original: https://gitlab.com/jtl-software/jtl.../master/Exportformat/GoogleReviewXML.php#L261
Patch: https://gist.github.com/muemarco/19fce9ab05c0abee18b077b4a3234a22#file-googlereviewxml-php-L261

content-Knoten, Zeile 262
Original: https://gitlab.com/jtl-software/jtl.../master/Exportformat/GoogleReviewXML.php#L262
Patch: https://gist.github.com/muemarco/19fce9ab05c0abee18b077b4a3234a22#file-googlereviewxml-php-L262

product_name-Knoten, Zeile 308
Original: https://gitlab.com/jtl-software/jtl.../master/Exportformat/GoogleReviewXML.php#L308
Patch: https://gist.github.com/muemarco/19fce9ab05c0abee18b077b4a3234a22#file-googlereviewxml-php-L308

Alternative Lösung via sanitize-Funktion
Das Steuerzeichen & in str_replace hinzufügen und durch & ersetzen. Lösung:
Code:
    /**
     * @param string $content
     * @return string
     */
    private function sanitize(string $content): string
    {
        return \str_replace(['>', '<', '&'], ['&gt;', '&lt;', '&amp;'], \html_entity_decode($content));
    }

Falls ihr einen Feed für interne Tests benötigt (unverändertes Shoping Plugin Version 2.2.0), in dem alle nicht erlaubten Steuerzeichen in den Bewertungen verwendet wurden, könnt ihr euch gerne bei uns bedienen (ca. 7.700 Produktbewertungen / 6,4 MB). Den neuen Feed, resultierend aus der gepatchten GoogleReviewXML.php findet ihr an gewohnter Stelle. Upload im Merchant Center sowie XML Validierung waren erfolgreich.

Mit den besten Grüßen,
Marco
 
Zuletzt bearbeitet:

FMoche

Moderator
Mitarbeiter
15. Dezember 2014
1.302
305
Halle (Saale)
Hallo @Marco Stark und vielen Dank für die Hinweise.
Das werde ich so gerne übernehmen, wobei das Sanitizen hier eher komplett unnötig erscheint, oder?
Wenn die Felder in CDATA gewrappt werden, kann ja auch genauso direkt ">", "<" und "&" genutzt werden.
Zumindest validiert das XML dann auch via
xmllint --schema http://www.google.com/shopping/reviews/schema/product/2.3/product_reviews.xsd --noout FILE.xml

Darauf, dass Google hier HTML-Entities erwarten würde, finde ich jedenfalls keinen Hinweis.
 
  • Gefällt mir
Reaktionen: Marco Stark

Marco Stark

Aktives Mitglied
18. Oktober 2014
17
2
Guten Morgen Felix,

der Upload des neuen/geänderten Feeds war erfolgreich. Goggle hat ihn vollständig verarbeitet.
 
Ähnliche Themen
Titel Forum Antworten Datum
Neu JTL Ameise Batch - DB-Verbindung fehlgeschlagen. Fehler bei der Anmeldung für den Benutzer User helfen Usern - Fragen zu JTL-Wawi 5
Neu Abgleich JTL Shop über Worker wird mit Fehler beendet Onlineshop-Anbindung 0
Fehler Upload-Modul - keine Anzeige von Uploads in JTL-Wawi Anhängen JTL-Wawi 1.7 2
Neu JTL Shop 5.2.2 Google Sitemap Fehler "Falscher Namensraum" Technische Fragen zu Plugins und Templates 6
Neu Amazon Pay Checkout Fehler 503 Plugins für JTL-Shop 0
Neu Französische Sprache erzeugt JavaScript-Fehler (Shop 5.2.2) JTL-Shop - Fehler und Bugs 0
Neu Fehler aufgetreten - Deadlocksituation JTL-Wawi - Fehler und Bugs 0
Kaufland Fehler 400 - Empty Error Response from Kaufland API received kaufland.de - Anbindung (SCX) 5
Unbekannter Fehler in der Wawi beim Connector anbinden JTL-Wawi 1.6 0
Neu CSV Datei Import, Fehler in der Kopfzeile JTL-POS - Fehler und Bugs 0
Neu SHOP5 / Fehler Ust.. / Rech.AdR. Ausland / Lief. Inland JTL-Shop - Fehler und Bugs 4
Neu XTC Modified Verbindung klappt nicht. Fehler bei der Authentifizierung. Das Passwort in den Onlineshop-Einstellungen ist falsch. Modified eCommerce-Connector 0
Neu Fehler beim Drucken/Speichern: Diese Datei ist keine List&Label Vorschau-Datei oder es kann nicht auf die Datei zugegriffen werden User helfen Usern - Fragen zu JTL-Wawi 0
Neu DHL Express Versand Fehler: Number of fraction digits is greater than fractionDigits -/shipreq:ShipmentRequest/Request... JTL-Wawi - Fehler und Bugs 0
Fehler bei fortlaufender Nummer für Debitorenkonten JTL-Wawi 1.6 0
Neu Fehler bei Plugin Installation: Keine Einstellungen vorhanden ??? Technische Fragen zu Plugins und Templates 2
Neu Fehler beim download der Designvorlagen ebay eBay-Designvorlagen - Fehler und Bugs 2
Neu Fehler beim einstellen Ebay Angebote Bilder "ESP" eBay-Designvorlagen - Fehler und Bugs 1
Neu Fehler beim Zugriff auf die Datenbank (Exec Direct) JTL-Wawi - Fehler und Bugs 3
Neu Fehler bei der Schnittstelle? eBay-Anbindung - Fehler und Bugs 71
Neu JERA: MT940-Addon von JTL2Datev und Fehler bei Skonto Schnittstellen Import / Export 0
Neu nach Update 1.7.10 Fehler Druckvorlage isoCode JTL-Wawi - Fehler und Bugs 0
Neu Fehler beim Ableich mit dem Shop Shopware-Connector 0
In Bearbeitung Artikelstammdaten Fehler - weißes Feld Allgemeine Fragen zu JTL-POS 4
In Diskussion Fehler beim Import der Artikel.csv JTL-POS - Fehler und Bugs 2
In Bearbeitung Kann man den EC Fehler oder Error auslesen? Allgemeine Fragen zu JTL-POS 2
Neu Der Remoteserver hat einen Fehler zurückgegeben: (503) Server nicht verfügbar. Shopify-Connector 11
Neu Fehler in "Erweiterten Eigenschaften" Eigene Übersichten in der JTL-Wawi 4
Neu Fehler 427 Unsicherer Spaltentitel User helfen Usern - Fragen zu JTL-Wawi 0
Neu Kritischer Fehler bei SEPA-Sammellastschrift JTL-Wawi - Fehler und Bugs 0
Beantwortet Apache Fehler nach Sync Betrieb / Pflege von JTL-Shop 1
DPD - Fehler bei Adressetiketten via Schnittstelle JTL-Wawi 1.6 2
Worker Abgleich mit Fehler JTL-Wawi 1.7 5
Neu Fehler beim Einstellen aus Artikel "Neue Produktseite erstellen" Amazon-Anbindung - Fehler und Bugs 0
Neu Versanddaten Export Fehler: The remote name could not be resolved: 'api.deutschepost.com' JTL-ShippingLabels - Fehler und Bugs 0
Neu Fehler beim öffnen eines Artikels "Unbehandelte Ausnahme #3F42ED1D1BE41DE4 vom Typ System.NullReferenceException" JTL-Wawi 1.7 4
Neu Sporadischer Abgleich Fehler trifft jetzt auch manche Kategorien Shopware-Connector 0
Neu Fehler - Streckenlager sollen keine Min/Max Bestände haben JTL-Wawi - Fehler und Bugs 0
Scx Abgleich Fehler kaufland.de - Anbindung (SCX) 8
Neu Fehler beim Versand mt DPD und Amazon // Trackind ID // 18181 Amazon-Anbindung - Ideen, Lob und Kritik 13
Neu Amazon Pay > Fehler " Access to Reports.GetReportRequestList is denied" User helfen Usern - Fragen zu JTL-Wawi 2
Beantwortet Kaufland SCX Fehler Anbindung kaufland.de - Anbindung (SCX) 1
Neu Fehler bei Gewichtsbestätigung JTL-Workbench - Fehler und Bugs 0
Neu Fehler bei Abgleich mit Shopify Connector Shopify-Connector 9
Neu Paypal Fehler JTL-Shop - Fehler und Bugs 0
Neu Ebay Token Fehler - Error Code 21919136 Fügen Sie mindestens 1 Foto hinzu. Je mehr Fotos, desto besser! - Variationsartikel eBay-Anbindung - Fehler und Bugs 0
Neu Shopware 6 (SaaS) BETA - 2 Fehler im Connector Shopware-Connector 1
Neu Zahlungsmodul "Sofort" bringt nach "Zahlungspflichtig Bestellen" "ein interner Fehler ist aufgetreten (springt zurück "Versandart / Zahlungsart") Plugins für JTL-Shop 2
Neu Amazon-Abgleich mit Fehler, Bestellungen werden nicht abgeholt Amazon-Anbindung - Fehler und Bugs 3
Neu Kunden-Empfangen-Fehler Modified eCommerce-Connector 5

Ähnliche Themen