Benutzerliste: Profile listing bestimmter Felder
am 26.08.2009 - 22:15 Uhr in
Hallo zusammen,
ich kämpfe seit einigen Tagen mit dem Profile Modul. Nun habe ich es endlich geschafft, die Benutzerliste (www.example.com/profile) zu formatieren (anhand der profile-listing.tpl.php) und eine alphabetische Sortierung der Profile (über umständliche String-/Array-Editier- bzw. -Sortieroperationen in der profile-wrapper.tpl.php) vorzunehmen, ohne in das Profile Modul zu berühren.
Ich weiß, das wäre auch mit Views gegangen - allerdings konnte mit Views keine "klickbaren" Profilfelder erzielen (wenn als Profilfeld z.B. Stadt angeben ist, so kann man bei der Benutzerliste des Profile-Moduls auf seine Stadt, z.B. Berlin klicken, und sieht dann alle User aus Berlin). Beispiel: http://drupal.org/profile/interest/lullabot
Nun zum Problem: Klickt man auf ein solches Feld, z.B. Berlin, dann werden zwar alle User mit identischem Feld aufgerufen - der Inhalt des Feldes wird aber bei der Auflistung nicht angezeigt. Im Stadt-Beispiel wäre dies ja noch erträglich, nicht aber z.B. bei Hobbies (wenn mehrere Einträge angegeben werden können). Dann fehlt einfach der gerade gewählte Begriff.
Besteht die Möglichkeit, den aktuell gewählten Begriff trotzdem in der Auflistung zu zeigen?
- Anmelden oder Registrieren um Kommentare zu schreiben
View
am 26.08.2009 - 22:22 Uhr
Moin.
Verwende Views.
Du nimmst Dir einen View, der Dir die Liste der Benutzer ausgibt (Page-Display; Pfad: "users").
Dann fügst Du ein weiteres Page-Display hinzu (Pfad: "users/city/%") und stellst dort als Argument das Feld mit dem Städtenamen ein.
Im ersten Display bearbeitest Du das Feld mit dem Städtenamen und sagst "Output this field as a link". Im Feld für den Pfad trägst Du dann "users/city/[name_des_stadt_feldes]" ein. Somit ist dieses Feld auf den zweiten View verlinkt und gibt im gleich das richtige Argument mit.
hth,
Stefan
--
sei nett zu Deinem Themer
Klappt nicht bei list und checkbox
am 27.08.2009 - 10:03 Uhr
Hallo Stefan!
Erst einmal vielen Dank für Deine schnelle Antwort.
Dann fügst Du ein weiteres Page-Display hinzu (Pfad: "users/city/%") und stellst dort als Argument das Feld mit dem Städtenamen ein.
Das habe ich auch bereits versucht. Das Problem ist, dass dies nicht bei den Profilfeldtypen List (Liste mit freiem Format) und Checkbox funktioniert. Diese Feldtypen werden in der Argumentenliste gar nicht angezeigt (oder muss ich hierfür im View eine Beziehung erstellen?).
Gerade jedoch bei dem Städte-Beispiel ist eine Liste mit freiem Format sinnvoll, da ansonsten alle Städte der Welt in ein Auswahlfeld aufgenommen werden müssten... ;)