我正在制作一个小部件,它以下拉列表的形式向用户显示类别。当用户选择类别并按下载时,我想获取类别下的所有帖子并下载它们。我在下载时遇到了一个问题。我做了一些
$xml = \'\'; //generated XML with Simple XML
header(\'Content-type: text/xml\');
header(\'Content-Disposition: attachment; filename="text.xml"\');
echo $xml->asXML();
我已经收到了邮件头。所以我用代码向init添加了缓冲:
add_action(\'init\', \'do_output_buffer\');
function do_output_buffer() {
ob_start();
}
在我的
MY_Widget::widget()
我添加代码
echo ob_get_clean();
之后
echo $xml->asXML();
如上所述。除了将整个页面(使用我的XML)导出为单个XML文件外,它在这里工作。
有没有办法下载文件而不包括整个页面?
最合适的回答,由SO网友:Stefano Mtangoo 整理而成
我只需要清理缓冲区,然后做我的工作,然后打电话退出
ob_clean(); //clear buffer
header(\'Content-type: text/xml\');
header(\'Content-Disposition: attachment; filename="text.xml"\');
echo $xml->asXML();
exit();