Meinst du den Variantenfilter eindimensional?
Ich versteh das Problem leider nicht, woran kann das denn liegen? Alles andere funktioniert ja, der Fehler muß doch irgendwo zu beheben sein.
Ja, Variantenfilter! Welche Probleme hast du denn genau? Du hast Konfigurationsfelder, in denen Texte mit Umlauten stehen und diese Umlaute werden beim Speichern „zerstört“? Oder geht es um die Plugin-Meta-Daten wie z.B.Copyright etc.
Genau, es geht nur um die Texte, nicht das Copyright, das Thema haben wir ja zusammen schon gelöst, das lag an der Textcodierung utf8, aber die Dateien sind alle in ISO Latin 1.
Habe nur ich das Problem? Oder ist das sonst noch nirgends aufgefallen?
Packe mal in deine Install-Methode if (Shopware()-\>Config()-\>Version == "3.5.3"){ $event = $this-\>createEvent( 'Enlight\_Controller\_Action\_PreDispatch\_Backend\_Plugin', 'onBackendPlugin' ); $this-\>subscribeEvent($event); }
und dann als eigene Funktion: static function onBackendPlugin(Enlight\_Event\_EventArgs $args) { $request = $args-\>getSubject()-\>Request(); if ($request-\>getActionName() == "saveDetail" && Shopware()-\>Config()-\>Version == "3.5.3"){ $config = $request-\>getPost('config'); foreach ($config as $key =\> $row){ $config[$key]["relations"] = utf8\_decode($row["relations"]); $config[$key]["relationsAttribut"] = utf8\_decode($row["relationsAttribut"]); } $\_POST["config"] = $config; } }
Du musst dann die beiden Zeilen: $config[$key]["relations"] = utf8\_decode($row["relations"]); $config[$key]["relationsAttribut"] = utf8\_decode($row["relationsAttribut"]);
bzw. die Keys / Namen der Felder mit denen aus deiner Konfiguration ersetzen - also z.B. statt relations „name_des_feldes“. Hatte auf meinem Entwicklungsrechner das gleiche Problem - die Plugin-Konfiguration wird wohl bei gewissen Server-Konstellationen nicht korrekt kodiert angezeigt.
Habe das jetzt mal eingefügt, hier der Teil mit dem Textfeld: static function onBackendPlugin(Enlight\_Event\_EventArgs $args) { $request = $args-\>getSubject()-\>Request(); if ($request-\>getActionName() == "saveDetail" && Shopware()-\>Config()-\>Version == "3.5.3"){ $config = $request-\>getPost('config'); foreach ($config as $key =\> $row){ $config[$key]["text1"] = utf8\_decode($row["text1"]); $config[$key]["text1Attribut"] = utf8\_decode($row["text1Attribut"]); } $\_POST["config"] = $config; } }
Bringt leider nichts. Gleiche Problem. Cache komplett geleert
Stefan, hast du noch eine Idee?
Moin, hmm - ansonsten schick mir nochmal deine Zugangsdaten an forum@shopware.de - dann schaue ich mir das Morgen früh nochmal an!
Noch mal vorsichtig nachfrag
Habe dich nicht vergessen - aber da heute Freitag und somit Plugin Publish Day ist, habe ich im Moment noch gut zu tun Du bekommst aber heute noch eine Info.
Super, Danke Stefan!