Где вы включаете Firephp в WordPress?
Вопрос
я использую require_once()
в header.php, чтобы включить библиотеку Firephp. В Page.php я делаю обычно ...
$firephp = FirePHP::getInstance(true);
$firephp->log($categories);
Получение этих ошибок ..
'Headers already sent....'
а также
Cannot send log data to FirePHP. You must have Output Buffering enabled via ob_start() or output_buffering ini directive...
Я решил, что использование require_once в заголовке шаблона. Php (прежде всего HTML -вывод) будет безопасным (вывод до заголовка). Думаю, это не так.
У кого -нибудь есть опыт с этим? (PS Я попробовал плагин WP Firephp, не работал правильно)
Решение
Firephp использует выводы для передачи данных отладки в браузер. Итак require_once()
Заявление не является проблемой, но тот факт, что вы входите в систему page.php
, в этот момент HTML уже был выведен. Вам нужно не только включить FIREPHP до отправки какого -либо контента - вам также нужно сделать все журналы, прежде чем отправлять контент.
Обычный обходной путь состоит в том, чтобы удерживать любой вывод в браузер, используя выходную буферизацию и ob_*
Семейство функций. Это позволяет вам отправлять заголовки, хотя echo()
Команды (и подобные) уже были выпущены.
Я предполагаю, что делать все это безопасно это безопасно - это то, для чего был создан плагин wp_firephp. Я бы порекомендовал взглянуть на этот плагин.
Другие советы
Помещать
<?php
require_once(/FirePHPCore/FirePHP.class.php');
ob_start();
?>
В верхней части вашего файла заголовка.