我正在开发一个Joomla组件,其中一个视图需要将自己呈现为PDF。在视图中,我尝试使用以下行设置内容类型,但是当我看到响应时,它仍然是text / html。
header('Content-type: application/pdf');
如果我在常规的php页面中这样做,一切都按预期工作。看来我需要告诉Joomla使用application / pdf而不是text / html。我该怎么办?
注意:设置其他标头(例如Content-Disposition
)可按预期工作。
答案 0 :(得分:12)
从版本1.5开始,Joomla拥有JDocument对象。使用JDocument::setMimeEncoding()设置内容类型。
$doc =& JFactory::getDocument();
$doc->setMimeEncoding('application/pdf');
在您的特殊情况下,查看JDocumentPDF可能是值得的。
答案 1 :(得分:1)
对于那些认为以上是一个非常古老的答案的人,我确认JDocument :: setMimeEncoding()仍然有效,即使在1.6版本上(还没有在1.7上试过)。
答案 2 :(得分:0)
我在joomla 2.5中遇到了同样的问题。在joomla管理面板中点击8小时后,我找到了解决方案。
您现在应该能够将pdfs加载到媒体管理器中。希望这对你有用。我只是设置上传.mov
个扩展程序。
问题是它只能使用一次。现在,每当我导航到硬盘上的电影.mov文件时,浏览链接都不起作用。但是如果我选择任何其他文件类型呢?