PHP Code zum Erstellen einer TinyURL über TinyURL.com

Dienstag, der 27. Januar 2009. Veröffentlicht von René.

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: , ,

Verwandte Beiträge:

Verlinken


  • TwitThis
  • Technorati
  • Google
  • Yigg
  • Digg
  • MisterWong.DE
  • del.icio.us
  • StumbleUpon
  • Hype
  • Webnews.de
  • blogmarks
  • Spurl
  • Sphinn
  • Simpy
  • blinkbits
  • Furl
  • Blogosphere News
  • Yahoo! Buzz
  • Live
  • MySpace
  • Facebook
  • LinkedIn
  • Wikio
  • YahooMyWeb
  • E-mail this story to a friend!

8 Kommentare zu “PHP Code zum Erstellen einer TinyURL über TinyURL.com”

  1. Von Tweet This mit WordPress - bueltge.de [by:ltge.de]

    […] Erweiterung via Tiny-URL: Ein kleines Update möchte ich nachschieben, denn der einen oder andere Nutzer will die URL bei der Übergabe direkt kürzen - siehe Ad in den Kommentaren, denn 140 Zeichen sind doch recht wenig und hier gilt es Zeichen sparen. Aber auch dafür gibt es eine einfache Lösung, die jedoch eine Funktion benötigt, die aus unserem Permalink ein verkürzte URL erstellt. Dazu muss man nicht viel coden oder suchen, den der Service von TinyURL.com stellt dazu eine API bereit, der diese Aufgabe einfach übernimmt. Die nötige Funktion habe ich von René genommen, da er sie schon in seinem Blog veröffentlicht hat. […]

  2. Von Reynhard

    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? ;-)

    Antwort: Klar, danke für den Backlink!

  3. Von “Post to Twitter” für alle Webseiten - Weblog - Webdesign, Printdesign, CMS, Freeware, Linz/Austria - kick-image.at

    […] Danach erfolgt die Umwandlung der URL in eine “tinyurl” - die Adresse wird somit gekürzt. Hier Danke an René Ade (PHP Code zum Erstellen einer TinyURL über TinyURL.com). […]

  4. Von Tweet This with WordPress - Twitter, WordPress, Permalink-Template, Using, Most, After - WP Engineer

    […] There is not much coding necessary, because the service of TinyURL.com provides an API, which takes over this task easily. I use the necessary function of René, since he already has published it on his blog. […]

  5. Von WP2Twitter - Tweet bei neuem Artikel im Blog - Artikel, Hashtag, Skript, Tweet, Twitter, Wordpress, wp2twitter - ocean90s weblog

    […] Wenn ihr den Link zum Artikel noch kürzen wollt, müsst ihr euch die gettinyurl() Funktion von René Ade hier holen (erste Codebox) und ebenfalls in die functions.php einsetzen. […]

  6. Von Wordpress: WP2Twitter » Beitrag » Daily Tim

    […] Ocean90 verlinkt auf eine Funktion von René welche ich allerdings abgeänder habe, damit die URL mittels is.gd gekürzt wird was mehr Zeichen bringt. […]

  7. Von Hendryk

    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

  8. Von WP2Twitter – Tweet bei neuem Artikel im Blog (Update) » Artikel, Hashtag, Skript, Tweet, Twitter, Wordpress, wp2twitter » ocean90s weblog

    […] Wenn ihr den Link zum Artikel noch kürzen wollt, müsst ihr euch die gettinyurl() Funktion von René Ade hier holen (erste Codebox) und ebenfalls in die functions.php einsetzen. […]

Die Kommentare dieser Seite können über folgendes Feed verfolgt werden: Kommentar-Feed dieser Seite

Kommentare per eMail abonnieren

Einen Kommentar schreiben

Bei Fragen zu Software von mir bitte unbedingt die verwendete Version angeben und bei Fragen zu WordPress Plugins bitte zusätzlich auch die Version der WordPress-Installation!
Alle Kommentare werden erst nach manueller Prüfung freigegeben.

Bitte vor dem Absenden des Kommentars die Datenschutzhinweise lesen!