2014-07-03 134 views
0

我正在使用Feedwind从facebook页面获取RSS。问题是生成的链接点击后无法正常工作,如果我没有在Facebook上登录,就会导致出现空白页面,而如果是我,它会要求您确认要继续的链接。生成的地址是这样的:facebook上的链接RSS不起作用

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 

就如何解决这个问题有什么想法?

回答

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); 
} 
+0

感谢您的回复..我应该如何实现这个代码?我有点弱上PHP – manny999

+0

是第2行给了一个错误..上http://phpcodechecker.com/ – manny999

+0

任何人都可以帮助检查人??? – manny999