Я пытаюсь использовать Zebra_form в метабоксе для плагина WordPress, над которым я работаю.
Для простоты я сократил код до этого:
public function render_metabox( $post ) {
// instantiate a Zebra_Form object
$form = new Zebra_Form('form');
// the label for the "email" field
$form->add('label', 'label_email', 'email', 'Email');
// add the "email" field
$obj = $form->add('text', 'email', '', array('autocomplete' => 'off'));
// auto generate output, labels above form elements
$form->render();
}
Но я получаю следующую ошибку при попытке запустить его:
Warning: Cannot modify header information - headers already sent by (output started at /Users/dp/Documents/SitesDev/wordpress/wp-admin/includes/template.php:1877) in /Users/dp/Documents/SitesDev/wordpress/wp-content/plugins/my-plugin/lib/Zebra/Zebra_Form.php on line 4052
Fatal error: The library tried to store the CSRF token in a cookie but was unable to do so because there was output already sent to the browser. You should either start a session prior to instantiating the library (recommended), have no output (including and tags, as well as any whitespace) sent to the browser prior to instantiating the library, or turn output buffering on in php.ini. in /Users/dp/Documents/SitesDev/wordpress/wp-content/plugins/my-plugin/lib/Zebra/Zebra_Form.php on line 4052
Есть какие-нибудь подсказки? Или Zebra_form не может использоваться таким образом?
Я знаю, что прошло много времени с тех пор, как вы разместили этот вопрос, но вот где я придумал
Я получил ту же ошибку, что и вы, поэтому я заглянул в Zebra_Form.php и закомментировал строку 4041 в строку 4068.
Это сработало после.
ты должен положить
session_start();