Ich habe zum ersten mal bei TweetDeck gesehen, dass man URL Previews von ShortURL’s anzeigen kann, wie zum Beispiel von Bit.ly, Tinyurl.com oder is.gd. Manche dieser Dienste bieten eine Expand API an, bei manchen muss man aber die Header auslesen und Parsen, da diese mit 301 weiterleiten, kann man die Lange URL auslesen. Tweetmeme hat dies schon gemacht, und bietet eine API an, mit dem man viele Sachen rauslesen kann:
- Lange URL
- Kurze URL
- Title
- Klick Counter
- Wann die URL kurz gemacht wurden ist
Wichtig sind hier die ersten vier Punkte. Und ich habe dazu ein kleine Funktion geschrieben, die die URL ausgibt, mit samt den Informationen:
<?php /* URL Expander Using the Tweetmeme Preview API by Ahmet Topal, http://ahmet-topal.de/ Informations: http://basicblogger.de/2009/06/07/php-expand-shorturls-mit-tweetmeme-api/ */ function expandurl($shortURL) { $apiURL = 'http://api.tweetmeme.com/url_info.xml?url='.$shortURL; $xml = simplexml_load_file($apiURL); $longURL = $xml->story->url; $title = $xml->story->title; $counter = $xml->story->url_count; $urlcombi = '<b>Short URL:</b> <a href="'.$shortURL.'" target="_blank">'.$shortURL.'</a>'; $urlcombi .= '<br/><b>Long URL:</b> <a href="'.$longURL.'" target="_blank" title="'.$title.'">'.$longURL.'</a>'; $urlcombi .= '<br/><b>Title:</b> '.$title; $urlcombi .= '<br/><b>Click Counter:</b> '.$counter; return $urlcombi; } ?>
Diese Funktion gibt die ganzen Informationen aus, die in $urlcombi am ende stehen. Man kann die Funktion zum Beispiel so aufrufen:
<?php echo expandurl('http://tinyurl.com/tweetmeme'); ?>
Dies eignet sich für Online Dienste, zum Beispiel für Twitter Dienste, aber man kann dies auch für die Kommentare im Blog verwenden, in verbindung mit jQuery Mouseover..SCH