Tinyurl

Guite edited this page Nov 12, 2014 · 2 revisions
Clone this wiki locally

tinyurl

Mit dem tinyurl-Plugin wird die aktuelle URL auf einer Zikula-Site in eine TinyURL umgewandelt. Damit lassen sich dann verschiedene Features zur Unterstützung beliebter Web2.0-Dienste erstellen.

 "Unter einem Kurz-URL-Dienst versteht man einen Dienst, der die Erstellung von Weiterleitungs-URLs auf andere URLs erlaubt, die idealerweise aus möglichst kurzen Zeichenketten bestehen. Dies dient ursprünglich dazu, für unhandliche URLs handhabbarere Aliase (besser zu merken, schneller einzugeben, ...) erzeugen zu können. Weit verbreitet ist die Nutzung von Kurz-URLs in Microblogging-Diensten und Status-Meldungen in sozialen Netzwerken, die beide nur eine begrenzte Anzahl von Zeichen pro Nachricht erlauben." -- wikipedia.de

Beispiel: Original URL: http://de.wikipedia.org/wiki/Portal:Wissenschaft URL-Alias: http://tinyurl.com/o5lao

Installation

Das Plugin gibt es in der ExtDB zum Download. In dem Paket befindet sich nur eine Datei: function.tinyurl.php - diese legst Du in /config/plugins/ ab, damit es danach sofort in allen Themes bzw. Templates zur Verfügung steht.

Aufruf

Das Plugin wird aufgerufen wie jedes andere Plugin auch und kennt keine Parameter - es holt sich einfach selbst die aktuelle URL und gibt eine TinyURL zurück:

<!--[ tinyurl ]-->

Beispiele

Im Folgenden möchte ich Dir zeigen, wie Du mit dem Plugin ganz praktisch arbeiten kannst.

"Artikel Twittern"

Am Ende dieses vorzüglichen Aprilscherzes kannst Du das Plugin in Aktion sehen: "Artikel twittern" - Das heißt, die URL des Artikels wird zusammen mit einigen anderen Infos (Titel usw.) an twitter.com weitergereicht - wenn du bei bei Twitter eingeloggt bist, wenn Du darauf klickst, kannst Du den Text entweder noch verändert oder direkt absenden. Dadurch wird es sehr einfach, per Twitter auf interessante Artikel hinzuweisen.

In diesem Beispiel habe ich Pagesetter als News-Modul benutzt, so dass sich die folgenden Code-Schnipsel auf meine Pagesetter-Templates beziehen:

<a href="http://twitter.com/home/?status=<!--[ $smalltitle|strip_tags|trim|utf8_encode|replace:" ":"%20" ]-->%20-%20<!--[$title|strip_tags|trim|utf8_encode|replace:" ":"%20"]-->%20<!--[tinyurl]-->%20%23Kiel%20(via%20@ffluesterer)">Artikel twittern</a>

Wie Du siehst, handelt es sich dabei um einen einfachen Hyperlink, dem der zu übertragende Text einfach als Parameter angehängt wird:

Die aufgerufene URL lautet http://twitter.com/home/?status=

Der Text lautet dann RT @ffluesterer Yes, We Kiel! - Barack Obama eröffnet Kieler Woche 2009 http://tinyurl.com/cubtlq - Für diejenigen, die sich mit Twitter nicht so auskennen ein kleiner Exkurs: Das "RT" bedeutet "Retweet" - "Tweet" ist ein Eintrag bei Twitter, "Retweet" bedeutet, das was ein andere schon getwittert hat, noch einmal zu twittern - dem "RT" folgt der Username des ursprünglichen Twitters mit dem @ davor. Damit macht man also klar: "ffluesterer hat folgendes geschrieben und ich will euch das auch wissen lassen." Und dann folgt die eigentliche Nachricht.

Statt ffluesterer (dem Twitternamen von foerdefluesterer.de) trägst Du natürlich Deinen eigenen Twitternamen ein!

Auf Fördeflüsterer.de haben wir eine Dachzeile und die eigentliche Überschrift - im Quelltext repräsentiert als smalltitle und title. Aus beiden müssen HTML-Tags entfernt werden (die da unter Umständen von Transform-Hooks eingefügt werden) - deswegen der strip_tags-Modifier. Und es dürfen keine Leerzeichen auftauchen - die werden URL-codiert, indem die Leerzeichen durch %20 ersetzt werden. Daher auch die %20 an den anderen Stellen.

Und schließlich kommt der Aufruf für das TinyURL-Plugin.

Verlinkt werden bei uns das kleine Twitter-Logo und die Worte "Artikel twittern".

"Termin Twittern"

Auf die gleiche Art funktioniert das Twittern von Terminen aus crpCalendar:

<a href="http://twitter.com/home/?status=<!--[ $event.start_date|pndate_format:"%d. %B"|replace:" ":"%20" ]-->%20-%20<!--[$event.title|strip_tags|trim|utf8_encode|rawurlencode|replace:" ":"%20"]-->,%20<!--[$event.location.name|utf8_encode|rawurlencode|replace:" ":"%20"]-->%20<!--[tinyurl]-->%20%23Kiel%20(via%20@ffluesterer)">Termin twittern</a>

Hier wird der Termin in dieser Art an Twitter weitergereicht: "RT @ffluesterer 20. April - Kieler Webmontag, KITZ http://tinyurl.com/cpeffs L:Kiel" - Also wieder der Twitter-typische Anfang, dann das Datum in Kurzform, Titel der Veranstaltung und der Ort, dann die TinyURL und hinten dran noch L:Kiel, was so viel bedeutet wie "Location = Kiel" - Also die Stadt, in der die Veranstaltung ist. Auch die kann man natürlich aus crpCalender übernehmen, aber die ist bei uns immer "Kiel" ;-)