Wordpress IconAktuell findet man im Netz an immer mehr Stellen verkürzte Webadressen – die so gennanten „Short URLs“, sei es „bit.ly/zaSnA“ oder „is.gd/21sa“ – dieser Trend kam zusammen mit Twitter und dessen 140 Zeichenlimit, was die Autor zwingt möglichst kompakt zu schreiben. Da kann eine Short URL wahre Wunder bewirken: schaffen sie es doch die URLs auf sehr wenige Zeichen zu schrumpfen und somit hat der Autor des Tweets mehr Platz für seine eigentlich Aussage . Wenn man eine solche Short URL anclickt, wird man zu der eigentlichen Webadresse (auch „Permanent Link“ oder „Permalink“ genannt) weitergeleitet.

Please note: There is also an english version of this page.

Einleitung

Vor kurzem bin ich über ein nettes Tutorial gestolpert, welches erklärt wie man sein WordPress Blog automatisch eine Short URL für jeden Artikel erstellen lassen kann. Wenn der Webseitenbetreiber bereits eine Short URL anbietet, erspart er seinen Lesern die Arbeit, selbst Short URLs zu erstellen – und wenn der Betreiber selbst keine Arbeit hat, weil das Blog die gekürzte URL automatisch erstellt, ists umso besser. Das ganze ist mit einem so genannten „shortcode“ realisiert – das ist ein WordPress Feature, das es erlaubt an beliebiger Stelle eines Artikels ein Script auszuführen, dazu wird ein kleiner Befehl eingesetzt, der in etwa so aussieht:
[sourcecode lang=“php“]
[shortcode_name]
[/sourcecode]

Schwachstellen der bisherigen Lösung

Als ich die Lösung von Subzane.com ausprobiert stellte ich schnell fest das es Probleme mit der Performance der Website verursachen kann. Und zwar dadurch, dass es die Short URL jedes mal aufs neue generiert, wenn der Artikel gelesen wird. Das bedeutet, dass jeder Leser des Artikels einige Millisekunden (oder sogar Sekunden, wenn der Hoster der Short URL viel zu tun hat) extra warten muss bis die Seite angezeigt wird, nur weil die URL wieder und wieder erstellt wird. Darüber hinaus bietet es auch keinerlei Optionen an.

Mein Ansatz

Da ich etwas unzufrieden war, habe ich meinen eigenes Shortcode Plugin geschrieben. Es wird mit folgendem Befehl eingefügt:
[sourcecode lang=“php“]
[shorturl]
[/sourcecode]
Dort wo dieser Code eingefügt wird, fügt das Plugin dann automatisch bei der Veröffentlichung des Artikels die gekürzte URL ein – es macht also keinen Unterschied ob man seine Short URL am Anfang des Artikels erwähnen möchte, oder ganz am Ende. Für die Generierung der Short URL wird der Anbieter „u.nu“ verwendet, dieser bietet die kürzesten URLs die es zu kriegen gibt.

Außerdem bietet der Shortcode noch einige Optionen, die mit so genannten Attributen aktiviert werden können. Jedes Attribut kann entweder den Wert 1 (= aktiv) oder 0 (= nicht aktiv) annehmen, wird ein Attribut nicht gesetzt, nimmt es den jeweiligen Standardwert an. Hier eine Liste der verfügbaren Attribute und deren Standardwerte::

  • full – Zeigt ebenfalls die normale URL des Artikels an (= permalink) [Standard: 0]
  • link – Zeigt die URL(s) als HTML Link(s) an [Standard: 0]
  • txt – Fügt automatisch eine kleine Erklärung vor der URL hinzu „Short URL for this post:“ und entsprechend für die normale URL . [Standard: 0]
  • short – Zeigt die Short URL für diesen Artikel an [Standard: 1]

Ein paar Beispiele

[sourcecode lang=“php“]
[shorturl txt=1 link=1 full=1]
[/sourcecode]

Resultat: Erklärungstext und HTML Links sind aktiviert dazu wird zusätzlich die normale URL angezeigt:
[_shorturl txt=1 link=1 full=1]

[sourcecode lang=“php“]
[shorturl short=0 link=1 full=1]
[/sourcecode]
Resultat:Zeigt die Short URL nicht an, dafür aber die normale URL and diese als Link
[_shorturl short=0 link=1 full=1]

Bitte dran denken, dass die Reihenfolge der Attribute keine Rolle spielt – die beiden folgenden Codes haben das gleiche Resultat:
[sourcecode lang=“php“]
[shorturl link=1 full=1]
[shorturl full=1 link=1]
[/sourcecode]

Kompatibilität: Unterstützte WordPress Versionen

Dieses Shortcode Plugin wurde nur mit WordPress 2.8 getestet. Sollte jemand eine ältere Version zum Testen habe, wäre ich sehr dankbar.

Download des Short URL Plugins

Download Short-URL Shortcode for WordPress starten
In kürze wird das Plugin auch im WordPress Repository zu finden sein.

Installation des Plugins

  • Lade das Short URL Plugin herunter
  • Lade dann die shorturl.php in dein WordPress Plugin Ordner: „wp-content/plugins“
  • Aktiviere das Plugin in dem WordPress-Admin Einstellungsmenu „Plugins“
  • Füge den Shortcode ein wo du möchtest, ruhig auch mehrmals in einem Artikel.

Short URL ohne Shortcode einfügen

Wer die Short URL automatisch für jeden Artikel und immer an der gleichen Stelle einfügen möchte, kann dies mit dem folgenden PHP Code – einfach an der gewünschten Stelle in der single.php im Ordner des aktuellen Themes unter „wp-content/themes/“ einsetzen:

[sourcecode lang=“php“]

[/sourcecode]

Changelog

1.1

  • Nun werden auch „tr.im“ Short URLs unterstützt.

1.0

  • Das Plugin besitzt nun ein Einstellungsmenu.
  • Unterstützung von 5 verschiedenen URL Shortenern (is.gd, bit.ly, u.nu, snurl.com, tinyurl.com).
  • Vollautomatik Modus – die Short URL wird immer an das Ende des Artikels angefügt.
  • Short URLs im Vollautomatik Modus lassen sich beliebig mit HTML und CSS formatieren.
  • Die Labels die mit dem Attribut „txt“ hinzugefügt werden, lassen sich nun frei wählen.
  • Eine „Einstellungen zurücksetzen“ Funktion, die alle gespeicherten Einstellungen und URL Caches löscht.

0.1

  • Anfängliches Release – nur als Shortcode verwendbar.

Spenden statt Blumen





Wenn Ihnen das Plugin gefallen hat oder Sie einfach nur so den Autor motivieren möchten, dass Short URL Plugin weiter zu verbessern, spenden Sie doch einen kleinen Betrag – ganz einfach mit Paypal.


So weit fürs Erste, Fragen und Anregungen sind gern willkommen (-> Kommentare).

  • Dennis

    Klappt prima, vielen Dank. Was mich nur stutzig macht: Löschen die Anbieter nicht irgendwann Short URLs, zumindest dann, wenn sie nie verwendet werden?
    Vielleicht könnte man die Gültigkeit der Short URL regelmäßig überprüfen? Das geht (afaik) mit den APIs, und man müsste halt einen Zeitstempel für die letzte Überprüfung in den Metadaten des Artikels ablegen.

  • Mara Brodowsky

    Danke für die ausführliche Beschreibung des shortURL Plugins zu WP.
    Sobld ich mein WPBlog eingerichtet habe, wede ich zurückkommen wg des Plugin
    und dann auch noch mehr bei dir stöbern;)

    Mara,

  • Hendrik

    Schön zu hören – einfach bescheid sagen wenn du Hilfe benötigst 🙂

  • Hendrik

    Ja das mit dem Löschen der URLs ist tatsächlich ein Problem – gerade im SEO Zusammenhang, den schließlich verliert man Linkjuice, den man eigentlich schon sicher hatte.

    Daher sollte man schon einen Anbieter wählen, der gut aufgestellt ist und nicht einen unseriösen Kleinen – bei dem die Gefahr besteht, dass er morgen den Laden zu macht oder durch Tüdeligkeit die Datenbank verloren geht.

    Die großen Anbieter (tinyurl, bit.ly und co) wissen allerdings um ihre Wichtigkeit und würden nicht das Risiko eingehen, die „Kunden“ zu verprellen, indem sie anfangen die Shorturls zu löschen.

    Jedenfalls müssen die Anbieter die URLs nicht aus „Platzmangel“ löschen, denn bei nem 5-stelligen Hash gibt es bereits über 844 Millionen Kombinationsmöglichkeiten. Bit.ly ist mittlerweile bei einem 6-stelligen Hash, der über 51 Milliarden Kombinationen ermöglich. Unterm Strich sollte es also nicht nötig sein, alte Short-URLs zu löschen, um den Hash für eine neue URL nutzen zu können. Wenn tatsächlich irgendwann einmal die 51 Milliarden Barriere durchbrochen ist, kann man auch immer noch eine neue Domain benutzen (bit2.ly/…) oder den Hash um eine weitere Stelle erweitern.

    Lange Rede, kurzer Sinn: Bei den großen Anbietern würde ich mir keine Sorgen machen!

    PS: Die Validierung der URLs sollte funktionieren – aber auch da nen soliden Anbieter wählen (bit.ly bietet das soweit ich weiß), denn viele APIs beschränken sich auf das Erstellen der Kurz-URL.

  • notebook akku

    Vielleicht könnte man die Gültigkeit der Short URL regelmäßig überprüfen? Das geht (afaik) mit den APIs, und man müsste halt einen Zeitstempel für die letzte Überprüfung in den Metadaten des Artikels ablegen.

  • ROAdmin

    Link zum Tutorial funktioniert nicht