我正在使用Feedwind从Facebook页面获取RSS。问题是,单击时生成的链接无法正常工作,如果我没有登录Facebook,则会导致空白页面,而如果我是,则会要求您确认链接以继续。生成的地址是这样的:
http://l.facebook.com/l.php?u=http%3A%2F%2Fwww.theguardian.com%2Ftravel%2F2014%2Fapr%2F25%2Fitaly-puglia-salento-region&h=9AQG93jzV&s=1
虽然它应该是这样的:
http://www.theguardian.com/travel/2014/apr/25/italy-puglia-salento-region
有关如何解决此问题的任何想法?
答案 0 :(得分:1)
据我所知,这就是Facebook生成RSS源的方式。因此,更改它的唯一方法是获取RSS源数据,搜索" http://l.facebook.com/l.php?u=",解码后面的部分,并用链接替换链接的URL刚刚创建。
$matches = array();
pregmatchall(/http:\/\/l\.facebook\.com\/l\.php\?u=([^"]+)/, $rss, $matches);
foreach($matches[0] as $index => $match) {
$url = urldecode(html_entity_decode($matches[1][$index]));
str_replace($match, $url, $rss);
}