我有一个提交给API的自定义PHP表单。我想将此表单添加到我的Wordpress网站的侧边栏中。当我单独尝试custom-form.php页面时,它工作正常,提交到API并重定向。
当我将custom-form.php包含到我的sidebar.php中时,它不想重定向,但它仍然提交给API。
我知道标题需要在其他任何内容加载之前发生,但如果我将其包含在页面中,如何首先加载它?
header('Location: http://example.com');
有没有更好的方法将我的表单添加到Wordpress侧边栏?
代码看起来像这样:
<?php
if (isset($_REQUEST['submitted'])) {
$errors = array();
if (!empty($_REQUEST['name'])) {
$name= $_REQUEST['name'];
}
else {$errors[] = 'You forgot to enter your name';}
}
if (isset($_REQUEST['submitted'])) {
if (empty($errors)) {
include 'myapi.php';
header('Location: http://example.com');
}
}
//Rest of code....
//Output validation errors
//HTML Form
答案 0 :(得分:0)
你的index.php文件看起来像这样。
ob_start();
/*content of your index.php here*/
ob_flush();
这将导致您的输出缓冲应该在发送/回显到浏览器之前开始。
或者您可以使用默认重定向功能尝试其他解决方案:
<?php wp_redirect( site_url() ); exit; ?>