嗨,我想创建一个简单的登录代码,以将每个用户重定向到他自己的个人资料页面。
我正在使用页面“ CleanPage”作为我的php代码的模板。
我尝试了header Location
和wp_redirect
,但都显示了此错误:
警告:无法修改标头信息-标头已由发送 (输出开始于 /var/www/html/wp-includes/general-template.php:1076)中 /var/www/html/wp-content/themes/sydney/CleanPage.php,第43行
我想要这样的简单重定向:
header("Location: auth_customer.php?id=$userid");
请帮忙吗?
答案 0 :(得分:3)
尽管我已经在上面的评论部分中发布了链接。我相信这一定可以解决您的问题
<?php
add_action( 'send_headers', 'add_header_xua' );
function add_header_xua() {
// your login logic or whatever should go here
// ....
header("Location: auth_customer.php?id=$userid");
}
答案 1 :(得分:1)
使用自定义功能向“ wp_loaded”添加操作,然后在其中进行重定向。
<?php
add_action ('wp_loaded', 'ss_custom_redirect');
function ss_custom_redirect() {
$redirect = 'http://example.com/redirect-example-url.html';
wp_redirect($redirect);
exit;
}
?>
答案 2 :(得分:1)
最简单的方法是使用“元刷新”,请像<?php echo "<meta http-equiv='refresh' content='0;url=auth_customer.php?id=$userid'>"; ?>
这样尝试。
答案 3 :(得分:1)
尝试一下:
wp_redirect( home_url('/auth_customer.php?id='.$userid) ); exit;
答案 4 :(得分:1)
您需要将重定向功能放在get_header()/ wp_head()之前 例如:
if( //some logic here ) {
wp_redirect('page1');
} else {
wp_redirect('page2');
}
...
get_header();