WEBDESIGN

WordPress Shortcode um URL’s zu kürzen

Kurze URL's können manchmal sehr hilfreich sein, wenn man eine sehr lange URL hat (z.B. von Google Maps) und diese in einem Smartphone eingeben möchte, ist es viel angenehmer eine durch einen URL Shortener gekürzte Variante einzugeben. In diesem Artikel zeige ich, wie man mit Hilfe der TinyURL API einen Shortcode in WordPress bauen kann, damit lange URL's praktisch automatisch gekürzt werden.

Die Funktion

Die Shortcode API existiert in WordPress schon eine ganze Weile und im Prinzip ist so ein Shortcode nichts anderes als ein Funktionsaufruf. Ein Shortcode kann also als Makro für eine bestimmte Funktion gesehen werden. Aus diesem Grund brauchen wir zunächst eine PHP Funktion welche eine lange URL zu einer kurzen machen kann. Dafür bietet sich die Zuhilfenahme der TinyURL API an, es würde aber natürlich auch ein selbst gebauter URL Shorter (URL Shorter mit PHP) funktionieren.

Die Funktion wird in der functions.php im jeweiligen Themeverzeichnis angelegt. Da die TinyURL API nur einen String zurückliefert genügt ein simples file_get_contents() aus, da nichts mehr extra geparsed werden muss.

function get_tiny_url($arguments)
{
  if(empty($arguments))
    $url = get_permalink($post->ID);
  else
    $url = urlencode($arguments['url']);
  if($url)
    {
      $tiny_url = 'http://tinyurl.com/api-create.php?url='.$url;
      $new_url = file_get_contents($tiny_url);
    }
    else
      $new_url = "Error";
    return $new_url;
}

add_shortcode('small_url', 'get_tiny_url');

Die Funktion kann nun über den Shortcode small_url aufgerufen werden. Sollte keine URL explizit angegeben werden, wird automatisch immer die aktuelle URL des Artikels genommen.

Shortcode:

[small_url]  // gekürzte Artikel URL
[small_url url='http://staticfloat.com'] // x-beliebige URL gekürzt


Schreib einen Kommentar