WordPress Twitter Plugin

Nachdem der Tocki-Blog jetzt unter dem neuen Theme läuft, gab es Probleme mit dem Twitter-Plugin, das ich bisher verwendet habe (TweetSuite). Die Lösung ist der Twitter-Link mit Caching-Funktion von Sergej Müller.

Kein Plugin, eine Lösung!

Die Vorgehensweise ist einfach. Man ließt einen Artikel und findet ihn erwähnenswert. Was früher noch bedeutet hat, dass man einen Blog-Eintrag schreiben muss wird heute oftmals nur noch über Twitter verbreitet. Es ist also zeitgemäß und benutzerfreundlich als Blogbetreiber einen Link am Ende eines Artikel anzubieten, mit dem Leser den Beitrag ohne Umwege direkt über ihren Twitter Account veröffentlichen können.

Viele WordPress Plugins, wie TweetSuite, oder andere gehen zu Lasten der Performance, da bei jedem Aufruf der Artikelseite eine verkürzte URL des Permalinks erzeugt wird, wozu eine externe Schnittstelle aufgerufen wird.

Die Lösung von Sergej heißt folglich: Speicherung der Short-URL. Der URL-Kürzungs-Dienst – in seinem Skript bit.ly wird lediglich einmal angerufen. Die übermittelte Kurz-URL wird zwischen gespeichert und kann beim nächsten Aufruf des Artikels direkt verwendet werden.

Das nenn ich mal eine smarte Lösung.

Anpassung und Einbau

Der von Sergej angebotene Code-Schnipsel muss in die funktions.php des eigenen WordPress Themes eingebaut werden. Der hier angezeigte Code ist nur zur Darstellung gedacht. Da Sergej den Code auf der entsprechenden Seite immer wieder anpasst, ist es dringend zu empfehlen den  Code dort zu kopieren!

<?php
if (!function_exists('save_tweet_link')) {
  function save_tweet_link($id) {
    $url = wp_remote_retrieve_body(
      wp_remote_get(
        'http://bit.ly/api?url=' .get_permalink($id)
      )
    );
    if (!$url) {
      return sprintf(
        '%s?p=%s',
        get_bloginfo('url'),
        $id
      );
    }
    add_post_meta(
      $id,
      '_tweet_trim_url',
      $url
    );
    return $url;
  }
}

if (!function_exists('the_tweet_link')) {
  function the_tweet_link() {
    if (!$url = get_post_meta(get_the_ID(), '_tweet_trim_url', true)) {
      $url = save_tweet_link(get_the_ID());
    }
    echo sprintf(
      'http://twitter.com/home?status=%s%s%s',
      urlencode('Lese grade: '),
      $url,
      urlencode(' (via @wpSEO)')
    );
  }
}
?>

Die einzige Anpassung, die ich vorgenommen habe ist, dass ich die unteren 3 Zeilen von

      urlencode('Lese grade: '),
      $url,
      urlencode(' (via @wpSEO)')

in geändert habe.

      urlencode('Lese grade: '),
      $url,
      urlencode(' (via @Tocki)')

Das Script läuft bei mir ganz hervorragend und ich bin mit der Performance sehr zufrieden.



// Kommentar schreiben
// Trackback URL
// Kommentare als RSS 2.0

2 Kommentare zu "WordPress Twitter Plugin"

Schreibe einen Kommentar