Wie leite ich Benutzer nach dem Anmelden zu einer festgelegten URL um?

7

Ich habe eine Ansicht in Drupal 7, die PDF-Dateien auflistet. Ich möchte die Benutzer verfolgen, die diese Datei öffnen. Ich möchte also, dass sie, wenn sie beim Klicken nicht angemeldet sind, an die Anmelde- / Anmeldeseite gesendet werden. Ich habe dies bereits mit zwei Ansichten mit unterschiedlichen Berechtigungen erreicht, aber das Problem ist, dass sie nach der Anmeldung im Gegensatz zur PDF-Datei auf die Benutzerprofilseite umgeleitet werden.

Wie kann ich das erreichen?

Lucrozade
quelle

Antworten:

8

Alle Formulare in Drupal unterstützen einen internen Zielparameter.

Wenn Sie auf den Benutzer oder das Benutzer- / Registrierungsformular verlinken, können Sie? Destination = [url] hinzufügen.

user/register?destination=node/1

Da Sie die Dateiliste mit Ansichten anzeigen, müssen Sie den Dateilink neu schreiben, um den Zielparameter einzuschließen. Wenn Sie den Link mit l () ausgeben , können Sie die zusätzlichen URL-Daten im dritten Parameter von l wie hinzufügen

l('Sign in to View', 'user', 'destination=node/1');
Letharion
quelle
Versuchte diesen Ansatz erfolglos. Der Link wurde umgeschrieben, um die PDF-Datei aufzunehmen ( example.net/user?destination=http://example.net/sites/default/… ). Es geht zur Benutzeranmeldeseite, aber nachdem es sich angemeldet hat, geht es nicht zur PDF-Datei, es geht immer noch zur Benutzerkontoseite ... Fehlt mir etwas?
Lucrozade
Entschuldigung, ich habe jetzt Informationen hinzugefügt und darauf hingewiesen, dass dies nur für interne Pfade funktioniert , nicht für absolute, also wäre das example.net/user?destination=sites/default/files/datasheets/…
Letharion
Das Problem, das ich habe, ist folgendes: <br /> 1.Der Benutzer geht zur Ansicht und klickt auf den PDF-Link <br /> 2.Der Link führt den Benutzer zur Ansicht mit dem Benutzeranmeldeformular oben < br /> 3.Der Benutzer meldet sich an <br /> 4.Das PDF wird geöffnet <br /> 5.Wenn der Benutzer im Browser auf "Zurück" klickt, gelangt er zur gleichen Ansicht (obwohl er jetzt angemeldet ist ) mit den Benutzerinformationen oben in der Ansicht <br /> 6.Wenn der Benutzer auf einen anderen PDF-Link klickt, wird der Link nicht geöffnet, er wird auf dieselbe Seite weitergeleitet und dort zyklisch ausgeführt, da diese PDF-Links vorhanden sind das / user? Ziel <br /> <br /> Gibt es eine Möglichkeit, dies zu lösen? Thanx
Lucrozade
6

Der Login - Empfänger - Modul ist für alle Arten von Anmeldungen und Registrierungen. Auf den Projektseiten heißt es: "Es ist auch möglich, Benutzer nach dem Anmelden oder Abmelden auf der aktuell besuchten Seite zu halten."

Ich habe es noch nicht benutzt, aber ich hoffe, es löst Ihr Problem.

mtro
quelle
2

Sie können dies mit Regeln tun. Verwenden Sie das Ereignis nach der Anmeldung und fügen Sie eine Aktion hinzu, um den Benutzer auf die Seite zu übertragen.

Dee
quelle