2011-03-02 33 views
1

我使用一個非常簡單的PHP包含抓取my current twitter status並輸出內容到my website。但麻煩的是,當狀態中存在URL時,輸出不會生成類似實際狀態的鏈接。如何從我的PHP twitter feed輸出中創建鏈接?

實現此目的的最佳或最簡單的方法是什麼?

下面是我使用的填充狀態PHP:

<?php 
$response = new SimpleXMLElement('http://twitter.com/users/show/jglovier.xml',NULL,TRUE); 
echo $response->status->text.''; 
?> 

*編輯:因爲我只是一個前端開發人員最熟悉的HTML,CSS和JS勉強,我尋找這裏最簡單的修復,最好是基於JS的。

回答

4

嘗試使用bcherry/twitter-text-js。它會自動鏈接到twitter.com使用的規範的URL,@mentions和#hashtags。

將twitter-text.js放到您的服務器上,加載jQuery後加載它,然後在準備好的文檔上運行下面的代碼片段。

$('p.status').each(function(index, element) { 
    $(element).html(twttr.txt.autoLink($(element).text())); 
}); 
+0

這個有一些麻煩。我是一個jQ新手。我用JS語法很糟糕...... – 2011-03-05 16:52:50

+0

明白了!完美的作品。謝謝!!! – 2011-03-05 17:02:11

1

它實際上是一個代碼非常簡單幾行字:

 
function twitterify($ret) { 
    $ret = preg_replace("#(^|[\n ])([\w]+?://[\w]+[^ \"\n\r\t\\2", $ret); 
    $ret = preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r\\2", $ret); 
    $ret = preg_replace("/@(\w+)/", "@\\1", $ret); 
    $ret = preg_replace("/#(\w+)/", "#\\1", $ret); 
    return $ret; 
} 

來源:http://www.snipe.net/2009/09/php-twitter-clickable-links

+0

看起來不錯,但JS解決方案對我來說更容易。除了準系統基礎知識之外,我對PHP語法不太熟悉。不過謝謝。也許這會派上用場,當我在PHP的道路上變得更好! – 2011-03-05 17:03:05

0

我相信你已經解決了這個,因爲它已經有一段時間,因爲它被張貼,但對於用戶想要做類似的事情,我發現這是非常有用的:http://remysharp.com/2007/05/18/add-twitter-to-your-blog-step-by-step/

帶來的tweets(儘可能多或少數),但最好的是,你寫出了推文如何顯示的模板 - 例如時間/推文/海報或海報/推文/時間等。

非常酷!

+0

儘管您已鏈接的腳本解決了將twitter鏈接到頁面上的問題,但它根本不處理我的問題中的問題,即如何解析由PHP生成的純文本Twitter提要並添加鏈接以純文本版本。 – 2012-05-31 20:07:10

+0

看看例子。它分析http鏈接以及@username鏈接。您可以定義輸出的內容,因此您有很多選項可供使用。 – GT22 2012-06-01 09:01:35