Wie meine Twitter-Follower schon wissen bzw festgestellt haben, arbeite ich gerade an einem WordPress-Plugin zum automatischen Twittern von Beiträgen die bestimmten Kriterien entsprechen. Dafür habe ich unter Anderem eine Funktion benötigt, um eine URL schon im voraus in eine TinyURL umzuwandeln, damit ich diese in den generierten Nachrichten verwenden und vor allem deren Länge messen kann. Falls jemand auch eine solche Funktion benötigt, hier ein winziges unspektakuläres Code-Beispiel von mir:
function gettinyurl( $url ) { // get tiny url via api-create.php $fp = fopen( 'http://tinyurl.com/api-create.php?url='.$url, 'r' ); // open (read) api-create.php with long url as get parameter if( $fp ) { // check if open was ok $tinyurl = fgets( $fp ); // read response if( $tinyurl && !empty($tinyurl) ) // check if response is ok $url = $tinyurl; // set response as url fclose( $fp ); // close connection } // return return $url; // return (tiny) url }
Natürlich sollte man die URL zu TinyURL.com nicht fest codieren, ein bisschen besseres Error-Handling einbauen und dann evtl etwaige Fehlerausgaben der Filehandling-Funktionen unterdrücken wenn man diese nicht haben möchte…
Beispiel-Code zur Verwendung:
// Lange Beispiel-URL $longurl = 'http://www.rene-ade.de/inhalte/php-code-zum-erstellen-einer-tinyurl-ueber-tinyurl-com-api.html'; // Kurze URL von TinyURL.com bekommen $tinyurl = gettinyurl( $longurl ); // Beispiel ausgeben echo 'Lange URL ('.strlen($longurl).' Zeichen): '.$longurl; // Ausgabe: Lange URL (94 Zeichen): http://www.rene-ade.de/inhalte/php-code-zum-erstellen-einer-tinyurl-ueber-tinyurl-com-api.html echo 'Kurze URL ('.strlen($tinyurl).' Zeichen): '.$tinyurl; // Ausgabe: Kurze URL (25 Zeichen): http://tinyurl.com/d4jdlz
Übrigens: TinyURL verwendet zur Weiterleitung auf die Zieladresse den HTTP Status 301 (Moved Permanently) im Header. Das Bedeutet, der Link sollte für Suchmaschinen wie ein Link direkt auf die Zielseite zählen.
Weiterlesen
Kategorien: Entwicklung
Stichwörter: php, tinyurl, twitter
Verwandte Beiträge:


























Am 2. Februar 2009 um 11:16 Uhr
Am 5. Februar 2009 um 12:21 Uhr
Danke für diese Funktion, habs in einem Script verwendet - nat. mit Namensnennung - http://www.kick-image.at/weblog/05-02-2009/post-to-twitter-fuer-alle-webseiten
Ist hoffentlich ok?
Am 5. Februar 2009 um 15:29 Uhr
Am 26. Februar 2009 um 14:46 Uhr
Am 20. Mai 2009 um 18:14 Uhr
Am 23. Mai 2009 um 21:58 Uhr
Am 30. Juni 2009 um 22:10 Uhr
Hi,
ich hab zu dem Ding nen Plugin geschrieben, welches die gekürzte URL im Cache speichert und so vermeidet, dass diese bei jedem Aufruf der Seite neu generiert wird (und somit das Laden der Seite verlangsamt):
http://hjacob.com/blog/2009/06/short_url_shortcode_wordpress_german/
oder im Wordpress Codex:
http://wordpress.org/extend/plugins/shortcode-shorturl/
Gruß,
Hendryk
Am 16. August 2009 um 19:51 Uhr