FIND_IN_SET in TypoScript select
DatabaseQueryProcessor orderBy FIND_IN_SET
Falls jemand es gebrauchen kann und über Fehler stolpert bei dem Versuch eine Komma separierte Liste von UIDs oder so mit Hilfe von "FIND_IN_SET" in der Reihenfolge auszugeben, wie sie vielleicht in einem Multiselect im Backend angegeben wurde... hier ein Lösungsansatz.
Dieses TypoScript Snippet sollte unter TYPO3 v9 - v11 funktionieren.
ACHTUNG: Bei Verwendung von "unkontrollierten" Listen mit IDs, z.B. aus GET VARS auf Injections achten und Marker oder so verwenden.
20 = TYPO3\CMS\Frontend\DataProcessing\DatabaseQueryProcessor
20 {
table = YOUR_TABLE
selectFields.dataWrap = *, FIND_IN_SET(uid,'{field:YOUR_FIELD}') as foobar_sort
uidInList.field = YOUR_FIELD
pidInList = 0
// pidInList = 123 und where = ... nur wenn man uidInList nicht verwenden kann
// ansonsten auf 0 setzen zum deaktivieren
// und in das where ein FIND_IN_SET
where.dataWrap = FIND_IN_SET(uid,'{field:YOUR_FIELD}')
orderBy = foobar_sort
as = WHAT_EVER
}