Где вы включаете FirePHP в Wordpress? - PullRequest
1 голос
/ 28 марта 2010

Я использую 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 в header.php шаблона (прежде всего вывод HTML) будет безопасным (вывод перед заголовком) Думаю, это не тот случай.

Кто-нибудь имеет опыт работы с этим? (P.S. Я попробовал плагин WP FirePHP, не работал правильно)

Ответы [ 2 ]

1 голос
/ 30 апреля 2013

Помещенный

<?php
require_once(/FirePHPCore/FirePHP.class.php');
ob_start();
?>

вверху заголовочного файла.

1 голос
/ 28 марта 2010

FirePHP использует выходные заголовки для передачи отладочных данных в браузер. Таким образом, оператор require_once() - это не проблема, а тот факт, что вы входите в систему page.php, после чего HTML уже был выведен. Вам необходимо не только включить FirePHP до отправки какого-либо контента, но и всю регистрацию перед отправкой контента.

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

Полагаю, что все это безопасно - для этого и создан плагин WP_FirePHP. Я бы порекомендовал еще раз взглянуть на этот плагин.

...