SummArg | Cursos y recursos para webmasters

16/11/2010

Algunos snippets útiles para usar Twitter y WordPress

Sin necesidad de instalar plugins podemos obtener alguna información relevante vinculada a cuentas en Twitter en WordPress. Insertando diferentes funciones en el archivo functions.php del theme activo y luego llamando a la misma desde sidebar.php o single.php, logramos mostrar información de forma dinámica.

Obtener el número de seguidores  (followers)

En el archivo functions.php, insertar el siguiente código:

function get_followers($twitter_id){
	$xml=file_get_contents('http://twitter.com/users/show.xml?screen_name='.$twitter_id);
	if (preg_match('/followers_count>(.*)</',$xml,$match)!=0) {
		$tw['count'] = $match[1];
	}
	return $tw['count'];
}

En sidebar.php o en donde se desee mostrar la cantidad de followers, colocar:

$nb =  get_followers('cuentadetwitter');
echo "Mi blog ya tiene ".$nb." seguidores en Twitter!";

Obtener último mensaje de Twitter

En el archivo functions.php colocar:

function get_status($twitter_id, $hyperlinks = true) {
    $c = curl_init();
    curl_setopt($c, CURLOPT_URL, "http://twitter.com/statuses/user_timeline/$twitter_id.xml?count=1");
    curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
    $src = curl_exec($c);
    curl_close($c);
    preg_match('/<text>(.*)</text>/', $src, $m);
    $status = htmlentities($m[1]);
    if( $hyperlinks ) $status = ereg_replace("[[:alpha:]]+://[^<>[:space:]]+[[:alnum:]/]", '<a href="%5C%22%5C%5C0%5C%22"></a>', $status);
    return($status);
}

En la sección en se desee exhibir el mensaje colocar:

echo get_status('cuentadetwitter');

Obtener el número de veces que una entrada fue retwitteada

En  functions.php colocar:

function tweetCount($url) {
    $content = file_get_contents("http://api.tweetmeme.com/url_info?url=".$url);
    $element = new SimpleXmlElement($content);
    $retweets = $element->story->url_count;
    if($retweets){
        return $retweets;
    } else {
        return 0;
    }
}

En single.php insertar:

$rt = tweetCount(get_permalink());
echo "Retweeted ".$rt." times.";

Visto en catswhocode.com


Dejar un comentario