1

orなど/portal/の引数を取るというカスタムフォルダがあります。/portal/?id=123/portal/?id=321

ファイルには/portal/index.php、ユーザーが認証されていない場合にユーザーをWPログインに自動的にリダイレクトする以下を含めました。

include_once($ _SERVER['DOCUMENT_ROOT']。'/wp-load.php');

ログインしていない場合は、自動的ににリダイレクトされhttp://www.domain.com/wp-login.php?redirect_to=http%3A%2F%2Fwww.domain.com%2F&reauth=1ます。

redirect_toパスと引数が含まれるように引数を修正するにはどうすればよいですか?リダイレクトを次のようにします。

http://www.domain.com/wp-login.php?redirect_to=http%3A%2F%2Fwww.domain.com%2Fportal%2F?id%3D123&reauth=1

このように、ユーザーがログインすると、最初にアクセスしようとしていたページにリダイレクトされます。

4

2 に答える 2

0

まず、含めるwp-load.phpことはお勧めしません-いくつかの理由から、wp-loadを含めないでください-してください。

おそらく、ログインを要求するようにWordpressが構成されているため、ログインページへのリダイレクトが発生します。これはインクルードから直接発生するため、読み込まれる前にリダイレクトを変更するためのフィルターを挿入することはできません。リダイレクトはすでに実行されているため、後でそれらを使用することは意味がありません。

これがプラグインとして構築された場合、wp-loadによってロードさlogin_urlれ、次の例のようにリダイレクトを追加するために使用できるフィルターにアクセスできます。http: //trepmal.com/filter_hook/login_url/

于 2012-11-08T02:50:23.820 に答える
0

で始まるCookieキーの存在をチェックするハックを思い付くことができましたwordpress_logged_in_。Cookieキーが存在しない場合は、へのログインページにリダイレクトしますhttp://www.domai.com/wp-login.php?redirect_to=http%3A%2F%2Fwww.domain.com'.urlencode($_SERVER['REQUEST_URI'])

于 2012-12-21T18:22:46.140 に答える