登录后重定向WP外部

时间:2013-07-16 00:03:49

标签: wordpress redirect login

我有http://mysite.com/admin.php

我检查用户是否是管理员。 在第二种情况下,我将用户发送到wp-login页面,如下所示:

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

我希望重定向到admin.php但是wordpress总是把我发送给wp-admin控制面板。

我研究过。 当dest。主机不在过滤器中

  

allowed_redirect_hosts

WP只是将用户重定向到wp-admin。

如何向过滤器添加更多主机?

如果我把这个例子放在了关于functions.php的WP Codex上,它就会停止工作。

  

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;
}

2 个答案:

答案 0 :(得分: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()

希望这有帮助!

答案 1 :(得分:0)

最后它有效! 我做错了是将代码放在WP functions.php文件中,而不是放在我的自定义主题functions.php文件中。

全部谢谢!