ログイン後にユーザーを所定のURLにリダイレクトするにはどうすればよいですか?


7

Drupal 7でPDFファイルを一覧表示するビューがあります。そのファイルを開いたユーザーを追跡したい。ですから、彼らがクリックしたときにログインしていない場合は、ログイン/サインアップページに送信されます。私はすでに異なる権限を持つ2つのビューを使用してこれを達成しましたが、問題は、サインアップすると、PDFファイルではなく、ユーザープロファイルページにリダイレクトされることです。

どうすればこれを達成できますか?

回答:


8

Drupalのすべてのフォームは、内部宛先パラメーターをサポートしています。

ユーザーまたはユーザー/登録フォームにリンクするときに、?destination = [url]を追加できます

user/register?destination=node/1

ビューでファイルリストを表示するので、宛先パラメーターを含めるようにファイルリンクを書き直す必要があります。l()でリンクを出力する場合、次のようにlの3番目のパラメーターに追加のurlデータを追加できます

l('Sign in to View', 'user', 'destination=node/1');

このアプローチを試みましたが失敗しました。PDFファイルを含めるようにリンクを書き直しました(example.net/user?destination=http://example.net/sites/default/…)。ユーザーのログインページに移動しますが、ログインした後、pdfファイルには移動せず、ユーザーアカウントページに移動します...何か不足していますか?
Lucrozade、2012年

申し訳ありませんが、情報を追加しました。これは絶対パスではなく内部パスでのみ機能することを指摘しているため、example.net
user?destination

それが機能しました!私が抱えている問題はこれです:<br /> 1.ユーザーがビューに移動してPDFリンクをクリックします<br /> 2.リンクにより、ユーザーはユーザーログインフォームを上にしてビューに移動します< br /> 3.ユーザーがログインします<br /> 4.pdfが開きます<br /> 5.ユーザーがブラウザーで「戻る」をクリックすると、同じビューに移動します(現在ログインしている場合でも) )ビューの上にユーザー情報を表示します<br /> 6.ユーザーが別のpdfリンクをクリックすると、リンクが開かず、同じページに移動し、そこに循環します。 / user?destination <br /> <br />これを解決する方法はありますか?Thanx
Lucrozade

6

ログイン先のモジュールは、ログインおよび登録のすべてのタイプのためです。プロジェクトページには、「ログインまたはログアウトした後も、ユーザーが現在アクセスしているページを表示し続けることも可能です」と書かれています。

これまで使ったことはありませんが、問題が解決することを願っています。


2

ルールでこれを行うことができます。ログイン後のイベントを使用して、ユーザーをページに転送するアクションを追加します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.