RSS FEED问题
大家好,我有一个问题想向各位求教。我现在正在写一份RSS FEED的文件,不使用CI架构时,firefox打开,页面为RSS订阅页面。
当把代码按照CI架构,格式化后,输出结果以HTML页面显示,既浏览器无法识别这是一个RSS页面
我个人猜测是$this->load->view()中的问题。不知道各位大大有没有什么比较好的解决方法? ci 中国首页的 rss feed 没问题,说明 ci 的 view 没问题。
很明显是楼主的代码没写对,请贴出代码。 检查下content-type是否为text/xml。 谢谢各位的关心,我用了一个取巧的办法,RSS用非MVC架构方式另写了一个页面,然后链了过去…… 求助!~
是要把XML格式的东西输出来可以用.php文件吗?
因为从数据库读取字段必然是要用到.php文件才可以循环之类的
所以会有这样的视图页面。
它的数据来自于某个控制器
视图层代码
<?phpecho'<?xml version="1.0" encoding="' . $encoding . '"?>' . "\n"; ?>
<RSS version="2.0">
<CHANNEL>
<LINK><?php echo $feed_url; ?></LINK>
<DESCRIPTION><?php echo $page_description; ?></DESCRIPTION>
<LANGUAGE><?php echo $page_language; ?>
</LANGUAGE>
<CREATOR><?php echo $creator_email; ?></CREATOR>
<RIGHTS>Copyright <?php echo gmdate("Y", time()); ?>
</RIGHTS>
<?php foreach($posts->result() as $post): ?>
<ITEM>
<LINK><?php echo site_url('blog/posting/' . $post->id) ?></LINK>
<GUID><?php echo site_url('blog/posting/' . $post->id) ?></GUID>
<DESCRIPTION>
<!]></DESCRIPTION>
<;PUBDATE><?php echo $post->date; ?></PUBDATE>
</ITEM>
<?php endforeach; ?>
</CHANNEL>
</RSS>
这个文件被保存成rss.php
然后控制器里面这样header怎样才可以像CI中国那个RSS一样会弹出个框叫用户收藏的。
header("Content-Type: application/rss+xml");
$this->load->view('rss', $data);
请懂的来帮我说说。到底怎么做这个的。~
页:
[1]