Eingebette Views durch ein CCK-Feld steuern

Eingebette Views durch ein CCK-Feld steuern

Die Aufgabe: ein vorhandener View der eine Liste mit Kursterminen ausgibt sollte in einen Node einbettet werden. Dabei sollte der anzuzeigende Inhalt zusätzlich auf einen bestimmten Kurs eingegrenzt werden. Als Schlüsselfeld sollte dazu eine CCK-Feld dienen, das die Kursnummer enthält.

Die Lösung:

  1. View zum Bearbeiten aufrufen
  2. In "Arguments" das gewünschte CCK-Feld hinzufügen
  3. "Action to take if argument is not present:" auf "Provide default argument" einstellen
  4. Als "Default argument type:" "PHP Code" auswählen
  5. Im folgenden Feld "PHP argument code:" einen Code-Schnippsel eintragen, der den Wert des oben gewählten CCK-Feldes zurück gibt; 
    Beispiel: return $node_data_field_kursnr->field_kursnr_value;
    liefert die Kursnummer aus dem CCK-Feld "kursnr" zurück. Damit wird der View, der sonst alle Kurse enthält, auf die Kurse mit dieser einen Kursnummer eingegrenzt.
  6. Den View nun noch per Viewfield oder mit Insert View an der gewünschten Stelle einbauen.