Drupal Links eine „destination“ mitgeben

Gestern stand ich vor dem „Problem“ einem Link in einem Views Header eine „destination“-Angabe mitgeben zu müssen.

Der View beinhaltet Nodes eines bestimmten Typs und über den Header sollte „/node/add/contenttype“ erreichbar sein. Aber anders als es per default der Fall ist, sollte nach dem Anlegen des neuen Nodes nicht zum neuen Node selbst gesprungen werden sondern zurück zum Übersichtsview. Das URL-Argument „?destination=“ war mir bekannt, also den Link manuell per

Eintragen

im View-Header eingebaut. Leider wurde „?destination=Viewpfad“ völlig ignoriert, nach dem erfolgreichen Anlegen der Node landete man trotz dieser Angabe direkt auf dem neuen Node.

Die Lösung ist der „Druapl-Way of generating Links“.

Die Funktionen l() [5.x, 6.x] & drupal_get_destination() [5.x, 6.x], dazu das PHP Filter Core Modul.

Das PHP-Filter-Modul aktivieren, den entsprechenden Filter „PHP Code“ als Eingabeformat für den Views-Header aswählen und dann

 drupal_get_destination()));

eintragen.
Es purzelt nun ein Link heraus, mit „destination“-Angabe die von Drupal auch berücksichtigt wird.