Views Style: Tabelle - Tabellenzeile als Link
Eingetragen von nicki (188)
am 24.10.2010 - 19:03 Uhr in
am 24.10.2010 - 19:03 Uhr in
Hallo zusammen,
ich suche nach einer Möglichkeit bei einem View als Tabelle jede Zeile als Link auszugeben. Im Moment habe ich in der ersten Spalte den Node-Titel ausgegeben und diesen als Link angegeben. Besteht irgendwie die Möglichkeit die jeweilige Zeile komplett als Link zum Node auszugeben?
DANKE!
- Anmelden oder Registrieren um Kommentare zu schreiben
Hi! Prinzipiell kannst du
am 25.10.2010 - 20:39 Uhr
Hi!
Prinzipiell kannst du ja im entsprechenden views-template alle Änderungen vornehmen, die du brauchst. Vorlagen und Namenskonventionen findest du über "Theme: Information" in der view, z.B. views-view-table--DEINEVIEW--default.tpl.php.
Zu den Links: Die Tabellenzeilen setzen sich ja aus < tr>s (Zeilen) und < td>s (Zellen in der Zeile) zusammen. Du darfst aber leider das < a> Tag weder direkt außerhalb jeder Zeile um das < tr> "wickeln", noch direkt innerhalb. Erlaubt ist es außerhalb von < table> oder erst innerhalb von < td>. (Vielleicht gehts im < tr> trotzdem und produziert dein gewünschtes Ergebnis. Ausprobiert hab ichs nicht...)
Du kannst entweder in jedes < td> einer Zeile ein < a> mit dem gleichen Ziel packen und mouse-over effekte und dergleichen über Javascript lösen:
<tr>
<td>
< a href="ziel1">bla</a>
</td><td>
< a href="ziel1">bla</a>
</td>
</tr>
Oder jede Zeile als eigene Tabelle machen:
< a>
<table>
<tr>
<td class="zelle1">blubb</td>
<td class="zelle2">blubb</td>
</tr>
</table>
< /a>
Dann musst du aber schauen, dass dein Gesamtergebnis (alle "Zeilen") wieder wie eine Tabelle aussieht, d.h. du musst z.B. über CSS zellen mit class="zelle1" gleich breit machen etc... Dass sich die Zellen selbst je nach Content verbreitern geht dann halt nicht mehr...
Als Linkziel in der View ein "Node: Pfad"-Feld hinzufügen, das findest du dann im template wenn mich nicht alles täuscht für jede Zeile unter $row['path'].
Grüße
Chinees
Eine ander Möglichkeit
am 25.10.2010 - 20:50 Uhr
Eine ander Möglichkeit wäre:
Alle gewünschten Felder wählen mit "von der Anzeige ausschließen" bis auf das letzte Feld.
Beim letzten Feld: rewrite the output of this field
Dabei alle Felder über die entsprechenden Tokens zu einer Zeile zusammensetzen als Ausgabe für dieses Feld und dieses Feld auf den Beitrag verlinken.
Da dabei die Tabelle verloren geht (es wird ja de facto nur ein Feld angezeigt), muß man die Spalten über span-Tags mit Klassen, die man im CSS mit Breiten versieht, nachbilden.
Beste Grüße
Werner