0

私はhttp://mysite.com/admin.phpを持っています

そこで、ユーザーが管理者かどうかを確認します。2 番目のケースでは、次のように wp-login ページにユーザーを送信します。

blog.mysite.com/wp-login.php?redirect_to=http%3A%2F%2Fmysite.com/admin.php

admin.php へのリダイレクトを期待していますが、wordpress では常に wp-admin コントロール パネルに送られます。

調べました。宛先のとき。ホストはフィルターに含まれていません

allowed_redirect_hosts

WP はユーザーを wp-admin にリダイレクトするだけです。

フィルターにホストを追加するにはどうすればよいですか?

WP Codex のこの例を functions.php に配置すると、機能しなくなります。

( http://codex.wordpress.org/Plugin_API/Filter_Reference/allowed_redirect_hosts )

add_filter( 'allowed_redirect_hosts' , 'my_allowed_redirect_hosts' , 10 );
function my_allowed_redirect_hosts($content){
    $content[] = 'blog.example.com';
    $content[] = 'codex.example.com';
    // wrong: $content[] = 'http://codex.example.com';
    return $content;
}
4

2 に答える 2

1

に次を追加しますfunctions.php

function my_allowed_redirect_hosts($allowed_host) {
    $allowed_host[] = 'anothersite.com';
    $allowed_host[] = 'www.someotherwebsite.com';
    return $allowed_host;
}
add_filter('allowed_redirect_hosts','my_allowed_redirect_hosts');

anothersite.comそれに応じて新しい値を置き換えて追加します。


通常のページでユーザーをリダイレクトしようとしている場合は、Wordpress のwp_redirect()機能を利用できます。

<?php
wp_redirect( $location, $status );
exit;
?>

ドキュメンテーション:wp_redirect()

お役に立てれば!

于 2013-07-16T00:08:15.997 に答える