Wir hatten bei einer Installation nach dem Upgrade von we3.5.1.9 auf we6.2.7.0 das Problem, dass alle Links einer Linklist bei der Ausgabe mittels <we:link /> das Attribut "onclick" gesetzt hatten. Das führte dazu, dass die Links in neuen Fenstern/Tabs öffneten. Das Verhalten war natürlich nicht gewünscht.
Offensichtlich hat sich da bei der Serialisierung der Daten beim Speichern etwas geändert (alt: 's:5:"jswin";s:0:"";' -> neu: 's:5:"jswin";N;'). Bei wenigen Links hilft es, wenn man die Links kurz öffnet und speichert. Dann tritt das Problem nicht mehr auf. Nachdem bei uns mehrere 1.000 Links betroffen waren, war das natürlich keine Option. Der Umweg über das "only"-Attribut von <we:link/> klappte auch nicht, da dieses momentan nicht fehlerfrei funktioniert (sh. #6616). Wir haben uns daher für eine direkte Ersetzung in der DB entschieden.
Hier die entsprechenden SQL-Queries, vielleicht kann die ja mal wer brauchen:
1. Linklisten abfragen:
Code: Alles auswählen
SELECT *
FROM `tblLink`
WHERE Type='linklist'
Code: Alles auswählen
SELECT *
FROM `tblContent`
WHERE
ID IN (
SELECT CID
FROM `tblLink`
WHERE Type='linklist') AND
Dat LIKE '%s:5:"jswin";s:0:""%'
Code: Alles auswählen
UPDATE `tblContent`
SET Dat=REPLACE(Dat, 's:5:"jswin";s:0:"";', 's:5:"jswin";N;')
WHERE
ID IN (
SELECT CID
FROM `tblLink`
WHERE Type='linklist') AND
Dat LIKE '%s:5:"jswin";s:0:""%';
- Use at your own risk!
- Backup nicht vergessen!
LG,
Sascha