Zum Inhalt springen

wt_directory: Ausgabe in 3 oder 4 Spalten

Erstellt am 3. Juni 2009 · 6 Antworten · letzte Antwort am 5. Juni 2009

Tags: Frage

Unbekannter Benutzer ·

Hallo,

Ein Kunde hat enorm viele Namen in seiner Adressdatenbank und will diese auch auf einer Seite alle anzeigen lassen. Das führt zwangsläufig zu einer langen Liste, die wohl niemand scrollen will.

Daher suchen wir derzeit nach einer Lösung, wie wir die Ausgabe in 3 oder 4 nebeneinanderliegenden DIV-Containern ausgeben können, also in etwas so:

Name | Name | Name | Name
Name | Name | Name | Name
Name | Name | Name | Name
Name | Name | Name | Name
Name | Name | Name | Name
Name | Name | Name | Name
etc

Der Ansatz, in der ersten Spalte nur A-F, in der 2. nur G-K etc auszugeben, ist nicht zielführend, weil die Spalten so ungleich lang werden.

Kann mir jemand helfen, einen anderen Ansatz zu finden? Ich scheitere an der Aufgabe, via TS eine DB-Abfrage zu gestalten und diese dann mit dem wt_directory PlugIn in Verbindung zu bringen. Abgesehen davon weiß ich nicht, wie ich mit TS zunächst die Gesamtzahl alles vorhandenen DB-Einträge auslese, diese dann durch 4 teile und daraufhin 4 COAs bastle...

Ich hoffe, das ist möglich!
Wäre das nicht prinzipiell ein tolles Zusatzfesture für wt_directory? (Ausgabe in X Spalten)

Vielen Dank!
MfG,
Robert Wildling

einpraegsam.​net ·

Nur so eine Idee:
Jeden Namen in einen DIV Container mit einer festen Breite und alle auf float: left;
Wenn kein Platz mehr ist, müsste automatisch ein Umbruch erfolgen!?

Unbekannter Benutzer ·

danke für die Antwort - ist eine wirklich reizvolle Idee, die nur leider den Nachteil hat, dass die Namen nebeneinander angeordnet werden und nicht untereinander.

Ich versuche immer noch, numrows irgendwie zwischenzuspeichern, dann durch 4 zu dividieren und dann separate Datenbankanfragen mit begin und max zu scripten. Aber ich weiß noc immer nicht, wie ich numrows in eine Variable bekomme und diese Variable dann so durch 4 Teile, dass auch immer eine aufgerundete Ganzzahl rauskommt (es wird wohl die Gefahr bestehen, dass Einträge am Ende der einen Spalte und am Anfang der folgenden möglicherweise doppelt angezeigt werden, oder?).

Darf ich um einen weiteren Tipp bitten?
Danke!

MfG,
Robert Wildling

etux ·
rowild schrieb

danke für die Antwort - ist eine wirklich reizvolle Idee, die nur leider den Nachteil hat, dass die Namen nebeneinander angeordnet werden und nicht untereinander.

Das heißt Du willst dass erst wenn die erste "Spalte" voll ist, eine zweite daneben angefangen wird? Wenn das so ist - habe ich keine Idee. Wenn aber nicht - könntest Du den Elementen (die die Namen enthalten) ein "display: inline-block;" geben und eine geeignete Breite.

Unbekannter Benutzer ·

Herzlichen Dank für eure Tipps!
Der Kunde wünscht sich aber ein Anordnung der Namen unterhalb:

Name01 | Name20 | Name30 | Name40
Name02 | Name21 | Name31 | Name41
Name03 | Name22 | Name32 | Name42
Name04 | Name23 | Name33
... ... ...

(Die CSS-Lösung ordnet die Namen von links nach rechts, nicht untereinander.)

Also die insagesamt vorhandenen Namen in 4 Gruppen, alle (bis auf die letzte) mit gleich vielen Namen gefüllt. (@Emil: also immer 4 Spalten, nicht erst weitere, wenn die erste voll ist).

Wie kann ich den return-Wert von numrows in einer Variable speichern, die dann mathematisch verarbeitet wird?

Danke!

Gruß,
Robert

einpraegsam.​net · · Beste Antwort
rowild schrieb

Also die insagesamt vorhandenen Namen in 4 Gruppen, alle (bis auf die letzte) mit gleich vielen Namen gefüllt. (@Emil: also immer 4 Spalten, nicht erst weitere, wenn die erste voll ist).

stimmt - hier habe ich auch keine Lösung parat