将我的网站从一台服务器转移到另一台服务器后,某些功能开始表现不同。
问题在于构建我的RSS Feed。我的Feed由包含html的数据库帖子组成,为了在Feed中正确显示它,我需要将图片路径更改为完整的域路径,而不仅仅是服务器根目录。为此,我使用简单的html dom(http://simplehtmldom.sourceforge.net)。
在Content-type:appilication / rss + xml中输出可变html时,它将显示“Object id#1”。我应该在设置内容类型之前选择输出它,我得到正确的HTML。 (在这种情况下< p> test< / p>)
为什么我不能在内容类型rss + xml中输出变量html?
require_once($_SERVER['DOCUMENT_ROOT'].'/lib/config.php');
require_once($_SERVER['DOCUMENT_ROOT'].'/lib/functions/simple_html_dom.php');
$html = str_get_html("<p>test</p>");
foreach($html->find('img') as $e) {
$e->src = $siteconfig['full_domain'].$e->src;
}
header("Content-Type: application/rss+xml; charset=UTF-8");
$rssfeed = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
$rssfeed .= "<rss version=\"2.0\">\n";
$rssfeed .= "<channel>\n";
$rssfeed .= "<title>Headline</title>\n";
$rssfeed .= "<language>da</language>\n";
$rssfeed .= "<item>\n\t";
$rssfeed .= "<description><![CDATA[".$html."]]></description>\n\t";
$rssfeed .= "</item>\n";
$rssfeed .= "</channel>\n";
$rssfeed .= "</rss>";
echo $rssfeed;
答案 0 :(得分:2)
试试这个:
$rssfeed .= "<description><![CDATA[".$html->save()."]]></description>\n\t";
答案 1 :(得分:0)
看起来很奇怪。试试这个,对于运动:echo $ rssfeed。“”;
还尝试删除标题下面的所有内容,那么输出是什么?