如何在函数中使用wp_reDirect

时间:2015-12-16 作者:frosty

我有以下动作和功能。最终,我尝试在模板中访问value$processArtwork。一个选项是通过querystring传递值。然而,以下结果

"Warning: Cannot modify header information - headers already sent by (output started at /home/xxxxxx/europeanpaintings.rpc-staging.com/wp-includes/formatting.php:1021) in /home/xxxxx/mysite.com/wp-includes/pluggable.php on line 1228"

add_action(\'init\', \'process_artwork\');

function process_artwork(){
    if(isset($_GET[\'ss-process\'])) {

                $newUrl = "/process-artwork/?processedArtwork=56";

                wp_redirect( $newURL ); 
                exit;
    }
}

1 个回复
最合适的回答,由SO网友:Jeroen 整理而成

您不会收到该错误,因为它在函数内部运行,而是因为标头已经发送。这意味着您的服务器已经向客户端发送了一些有关页面的信息,因此无法更改其标题(标题是第一个发送的内容)。这主要发生在一些事情得到回应之后。

您可以采取一些措施来防止这种情况发生:

选择在发送标头之前触发的另一个事件,在重定向之前删除任何回显文本或HTML,检查文件开头和<?php 标记

相关推荐