Der Thread befasst sich ja mit verschiedenen Punkten. Zu dem Fehler “Cannot read property x of undefined” bei Image Zoom und mehr als einem Bild habe ich aber keine Lösung herauslesen können. Da ich das Problem nun auch hatte, habe ich ein bisschen tiefer gegraben. Ich habe dazu eine Lösung gefunden, die relativ simpel ist und auf die Standard-OXID Funktionalität zurück greift.
Wen es interessiert - Das Problem
Das Problem ist, dass die Bild-Größen bei den “more pics” nicht geladen werden und diese Angaben dann dem JavaScript später fehlen. @windes hatte dazu schon eine Lösung mit allow_url_fopen gepostet, @Mitmacher hat hier zurecht angemerkt, dass das keine Lösung ist, da man sich damit Sicherheitsprobleme ins Haus holt.
Erstaunlich ist, dass OXID selber in der Detailansicht diese Daten auch anders lädt, nämlich bei dem großen Bild, das über den “morepics” angezeigt wird. Da dieser Weg nicht mit URLs sondern über einem lokalen Pfad läuft, grätscht die PHP Security Einstellung nicht rein und die Daten werden korrekt ermittelt.
Konkret: Die Lösung
Im Prinzip muss nur eine Zeile in der morepics.tpl gegen zwei neue ausgetauscht werden:
Ich wollte den aktuellen Fix noch mal ausprobieren, scheitere aber schon an dem Passwort.
Wo soll da was aufpoppen und wohin soll ich was schicken? Wenn ich die ZIP-Datei herunterlade und öffne (7-Zip oder Windows-Bordmittel-Packer), kommt nur die Passwort-Abfrage.
Und Feedback: Es läuft alles fehlerfrei. Ganz großes Lob und vielen Dank an @foxido.de!
Ich habe von einem aktuellen CE 4.10.6 Shop ein Flow-Child-Theme frisch erstellt und da einfach den foxido-Patch eingespielt.
kein Zoom-Bug mehr
Die Mini-Galerie ist nicht mehr broken bei > 4 Bildern
Photoswipe funktioniert jetzt auch auf Smartphone (xs), man muss nicht mehr mit dem Browser zurück navigieren
Das alles funktioniert jetzt auf dem Desktop, dem Tablet und dem Smartphone! Absolut genial, mir fällt ein Stein von Herzen. Zumal fast 40% der Clients unserer Seite Smartphones sind!
Ui, das waren ja ganz schön viele, die den Fix runtergeladen haben. Die Änderung von tj_schneider wird noch eingesetzt und alle Downloader benachrichtigt. Dies ist übrigens auch Sinn und Zweck, eine korrekte Mailadresse angeben zu müssen .