我的问题与线程Cannot modify header information in wordpress非常相似。不幸的是,它没有标记回答,cpicko的回答帮助我理解了这个问题,但我还没有能够解决它。
如果用户尝试登录后端配置文件,我会尝试将订阅者重定向到主页。我想这样做是因为我希望我的网站完全是前端驱动和专业。为此,wordpress在http://codex.wordpress.org/Plugin_API/Action_Reference/admin_init上有示例代码。如下所示
function restrict_admin_with_redirect() {
if ( ! current_user_can( 'manage_options' ) && ( ! defined( 'DOING_AJAX' ) || ! DOING_AJAX ) ) {
wp_redirect( site_url() );
exit;
}
}
add_action( 'admin_init', 'restrict_admin_with_redirect', 1 );
当我将它粘贴到我的functions.php中时,它会进行重定向,但会在标题之后因以下错误而中断。
"Warning: Cannot modify header information - headers already sent by (output started at /***/wp-content/themes/twentytwelvechild/headerwithquotes.php:15) in /***/wp-includes/pluggable.php on line 1121"
但这些文件/行根本不会被我修改。它们就像新鲜的wordpress安装一样。这个例子也和wordpress网站完全一样。这在我的开发站点中工作正常,但在迁移到生产时不起作用
Cpicko在那个帖子中提到javascript可能会有所帮助。如果页面是wordpress默认页面而不是网站中的内容,我如何在这种情况下使用javascript。有人可以请帮我这个重定向。我真的很感激。
答案 0 :(得分:1)
这可能由于几个原因而发生。几天前,当我尝试在我的function.php文件中添加一个新函数时,我遇到了这个问题。这是我从谷歌找到的修复
wp-config.php问题
1.Open your wp-config.php file with editor to edit it .
2.Remove all the spases before “<?php ” and after the ” ?>” symbols
3.If “?>” symbol is missing just add it at the end of the page.
4.Now save your file and check.
functions.php问题
1.Open your functions.php file with editor to edit it this is located at ” wp- content/themes/your theme name/functions.php”.
2.Remove all the space before “<?php ” and after the ” ?>” symbols If “?>”
3.symbol is missing just add it at the end of the page. Now save your
file and check.
来源:http://www.mytrickpages.com/2013/11/how-to-fix-wordpress-error-cannot-modify-header-information.html
答案 1 :(得分:1)
抱歉,但我的英语不是很好。我遇到了同样的问题
警告:无法修改标头信息 - 已经发送的标头 (输出从./public_html/wp-config.php:1开始)
在第1177行的./wp-includes/pluggable.php
8小时后我解决了这个问题。我只是在;
的第一行<?php;
的末尾添加wp-config.php
。就这样。现在,我可以以wordpress admin登录。
希望这会有所帮助......