Warum machst du die Darstellung nicht gleich mit CSS?
Daten in eine Liste packen, den List Items eine Breite geben und sie nebeneinander darstellen lassen (float/inline-block) – und per Weite der Liste regeln, wie viele nebeneinander dargestellt werden. (Oder das ggf. gleich dem verfügbaren Platz überlassen.)
Meine Fresse, da hab ich wohl vor lauter Bäumen den Wald nicht mehr gesehen! Klar, einfacher geht's ja gar nicht! Danke für die total triviale Lösung! :)