Невозможно изменить информацию заголовка - заголовки уже отправлены ... Wordpress Issue - PullRequest
1 голос
/ 12 сентября 2011

Я сталкиваюсь с этой ошибкой.и я понятия не имею, что с этим делать.

Невозможно изменить информацию заголовка - заголовки уже отправлены (вывод начался с /home/ben213/public_html/wp-content/themes/Bendaggers/functions.php:9) в /home/ben213/public_html/wp-includes/pluggable.php в строке 934

строка моего файла Functions.php № 9:

<?php if(function_exists('register_sidebar'))register_sidebar();?>

, в то время как мой pluggable.php # 934 имеет значение

функция wp_redirect ($ location, $ status = 302) {global $ is_IIS;

$location = apply_filters('wp_redirect', $location, $status);
$status = apply_filters('wp_redirect_status', $status, $location);

if ( !$location ) // allows the wp_redirect filter to cancel a redirect
    return false;

$location = wp_sanitize_redirect($location);

if ( !$is_IIS && php_sapi_name() != 'cgi-fcgi' )
    status_header($status); // This causes problems on IIS and some FastCGI setups

header("Location: $location", true, $status);}
endif;

IМне трудно понять это, так как я не программист.что не так?пожалуйста, помогите мне, пожалуйста ...

Ответы [ 4 ]

3 голосов
/ 12 сентября 2011

Я дам 99,9%, эта проблема возникает из-за нежелательных пробелов где-то перед первым "<?" и после последнего "?>" в php-скрипте.Редактирование сохранения файла в другой кодировке может также добавить такие пробелы (из-за спецификации).Так что это не всегда зависит от вашей внимательности.Используйте Notepad2 или что-то еще для редактирования кода, а лучше попробуйте использовать встроенный редактор тем онлайн в консоли администратора.Попробуйте найти и устранить все нежелательные пробелы в php-файле каждой темы и заново сохранить эти файлы.

1 голос
/ 09 января 2013

Вот что решило проблему для меня! В 'function.php' строка 9 ', которая, вероятно, выглядит как

 ?>

 <?php

убрать пробелы, чтобы они выглядели так:

 ?>
 <?php
1 голос
/ 26 декабря 2012

В моем pluggable.php найдите функцию wp_redirec и замените

header("Location: $location", true, $status);

на

echo "<meta http-equiv='refresh' content='0;url=$location' />";
1 голос
/ 12 сентября 2011

Я ничего не знаю о wordpress, но кое-что знаю о http ... Может быть, это может помочь.

Ошибка возникает из-за того, что вы пытаетесь изменить поле заголовка, хотя заголовки уже отправлены.Заголовки (автоматически) отправляются, когда фактическое содержимое страницы записывается в первый раз.

(http-заголовки являются частью http-протокола, который отправляет html-страницы, а не частью html-файла. В заголовках отправляются такие вещи, как коды состояния (404 и т. Д.) И т. Д.Таким образом, чтобы начать писать фактическую страницу, заголовки должны быть записаны первыми.)

Похоже, тема (?) Используется слишком рано или плагин "redirect" активирован слишком поздно ....

Попробуйте переместить "register_sidebar" до тех пор, пока вы не проверили, выполнять ли перенаправление.

РЕДАКТИРОВАТЬ:

Читая вам другие вопросы, я могу сказать, что выНужно научиться программировать или использовать другой инструмент.Найдите одну или две книги и дайте им немного времени.PHP - довольно смешанный язык, поэтому он не совсем идеален, чтобы учиться программировать, но поскольку он вам, кажется, нужен, ну, вот и все.

Удачи.

...