性价比最高的香港ASP、PHP主机提供商
做网站,就上凡科建站

WordPress 使用 wp_redirect 函数出现 Warning: Cannot modify header information – headers already sent

Loading
0
Comodo SLL证书促销 - 免费ssl证书申请_ssl证书购买_ev ssl证书_https证书购买 - GDCA_数安时代

最近更新主题的时候,使用了 wp_redirect() 函数来做一个页面跳转,没想到出现了“Warning: Cannot modify header information – headers already sent”的错误提示:

2015-10-29_193459_wpdaxue_com

搜索了下,php中使用重定向跳转时,“Warning: Cannot modify header information – headers already sent by (output started at…”是常见的错误提醒,出现该错误的原因是跳转函数前有包括回车、空格、换行的输出,解决方法是使用ob_start()函数打开缓冲区,使用跳转前的输入进入缓冲区而不会立即输出,避免这个错误提醒。

如果是 WordPress 使用 wp_redirect() 函数导致的这个问题,在当前主题的 functions.php 文件中添加以下函数即可:

1
2
3
4
5
6
7
8
/**
* 解决 wp_redirect()导致的 Warning: Cannot modify header information 问题
* https://www.wpdaxue.com/wp_redirect-Cannot-modify-header-information.html
*/
function cmp_do_output_buffer() {
    ob_start();
}
add_action('init', 'cmp_do_output_buffer');

如果大家还有其他解决办法,欢迎和我们一起分享。

参考资料:

http://www.boke8.net/wordpress-cannot-modify-header-information.html

http://stackoverflow.com/questions/7381661/cannot-modify-header-information-headers-already-sent-by-wordpress-issue#answer-7461813

支付宝扫码打赏 微信打赏

如果文章对你有帮助,欢迎点击上方按钮打赏作者

MetInfo | 最适合企业网站建设的cms系统

关于 倡萌

一个疯狂的 WordPress 爱好者,喜欢折腾 WordPress 主题,分享 WordPress 资源。如果你也喜欢 WordPress,欢迎和我一起交流!

精彩推荐

WordPress删除修订版和草稿的插件:WP Cleaner

WordPress删除修订版和草稿的插件:WP Cleaner

WordPress初始化重置插件:WordPress Reset

WordPress初始化重置插件:WordPress Reset

发表评论