Automatisch die TinyURL eines Blogposts anzeigen

16. Februar 2009

Wer die WordPress-Rezepte von Jean-Baptiste Jung liest, der hat vor ein paar Tagen auch gesehen, wie man die Tiny-URL-API nutzen kann, um automatisch die Tiny-URL seines Artikels auszugeben. Man muss dazu nur ein paar PHP-Codezeilen in sein Theme einfügen.

Tiny URL unter jedem Artikel

Tiny URL unter jedem Artikel

Was macht man aber, wenn man das Thesis-Framework nutzt?

Der PHP-Code von WPrecipes besteht aus zwei Teilen. Der erste Teil ist die PHP-Funktion, die über die Tiny-URL-API die TinyURL besorgt, die der zweite Teil dann im Blogbeitrag ausgibt. Die Funktion fügt man in die Datei custom_functions.php im Custom-Ordner von Thesis ein. Den zweiten Codeschnipsel hängt man mit einem der vielen Thesis-Hooks an die gewünschte Stelle im Theme ein.

Den Ausgabecode habe ich noch um eine If-Abfrage erweitert, weil ich die TinyURL nur auf Einzelseiten und nicht in der Vorschau anzeigen lassen möchte.

Die Funktion

function getTinyUrl($url) {
    $tinyurl = file_get_contents("http://tinyurl.com/api-create.php?url=".$url);
    return $tinyurl;
}

Diesen PHP-Code kopiert man in die Datei custom_functions.php.

Die Ausgabe

<?php
if(!is_preview() AND is_single()) {
$turl = getTinyUrl(get_permalink($post->ID));
echo 'Tiny Url für diesen Artikel: <a rel="nofollow" href="'.$turl.'">'.$turl.'</a>';
}
?>

Um diese Zeilen einzubauen, gibt es zwei Möglichkeiten. Die beste, weil einfachste Methode ist, den obigen Code in das entsprechende Feld des Thesis-OpenHook-Plugins zu kopieren. Die zweite Möglichkeit ist, den Code in eine Container-Funktion in der custom_functions.php zu packen und die dann mit add_function an einen Hook zu hängen. Welcher Hook das sein soll, kann man frei wählen. Anbieten würde sich ein Platz unter dem Artikel, also after_post.

Das Ergebnis könnt ihr unten unter dem blauen Kasten sehen.

Thesis rockt! Hol dir jetzt dein eigenes! Get it now! · Live Demo