Facebook, Twitter & Google+ Likes mit WordPress abfragen

Viele Webseiten binden die Facebook oder Google+ Like-Box ein. Wer eine individuell gestaltete Lösung bevorzugt oder ein WordPress-Plugin entwickelt, steht vor dem Problem aktuelle Statistiken zu Likes und Followern sowohl von Facebook, Google+ als auch Twitter abzufragen.

Wie das mit PHP geht zeigen wir Ihnen im nachfolgenden Tutorial. Zusätzlich werden die geladenen Ergebnisse auf dem eigenen Webserver (sofern WordPress verwendet wird, sonst muss der Code modifiziert werden, damit er funktioniert) gecached (zwischengespeichert). Durch das Caching werden unnötige Ladezeiten beim Seitenaufbau vermieden. Selbst wenn Sie einen schnellen Webhoster gewählt haben, sollten Sie auf ein gutes Caching nicht verzichten.

Facebook-Likes mit WordPress abfragen

function get_facebook_page_count($fanpage_name='YOUR_FAN_PAGE_NAME_HERE', $no_of_retries = 10, $pause = 500000 /* 500ms */){
   if( ($cached = wp_cache_get( 'fb_likes','sicon' )) != false ){
     return $cached;
   }

   $data = json_decode( file_get_contents('https://graph.facebook.com/1aandroid') );
   wp_cache_add( 'fb_likes', $data->likes, 'sicon', 7200 );
   return $data->likes;
}


Der obige PHP-Code fragt die Anzahl der Likes von Ihrer Facebook-Fanseite ab und gibt diese zur weiteren Verwendung zurück.

Google-Plus-Likes mit WordPress abfragen

function get_google_plus1_count($url)
{
   if( ($cached = wp_cache_get( 'gplus_count','sicon' )) != false ){
      return $cached;
   }


	$ch = curl_init();
	curl_setopt_array($ch, array(
	CURLOPT_HTTPHEADER      => array('Content-type: application/json'),
	CURLOPT_POST            => true,
	CURLOPT_POSTFIELDS      => '[{"method":"pos.plusones.get","id":"p","params":{"nolog":true,"id":"'.$url.'","source":"widget","userId":"@viewer","groupId":"@self"},"jsonrpc":"2.0","key":"p","apiVersion":"v1"}]',
	CURLOPT_RETURNTRANSFER  => true,
	CURLOPT_SSL_VERIFYPEER  => false,
	CURLOPT_URL             => 'https://clients6.google.com/rpc?key=YOUR_PAGES_KEY_HERE'));
	$res = curl_exec($ch);
	curl_close($ch);

	if( $res )
	{
		$json = json_decode($res,true);
		wp_cache_add( 'gplus_count', $json[0]['result']['metadata']['globalCounts']['count'], 'sicon', 7200 );

		return $json[0]['result']['metadata']['globalCounts']['count'];
	}
	return false;
}


Der obige PHP-Code fragt die Anzahl der Google+ von Ihrer Google-Plus-Fanseite ab und gibt diese zur weiteren Verwendung zurück.

Twitter Follower mit WordPress abfragen

function get_twitter_count(){

   if( ($cached = wp_cache_get( 'twitter_count','sicon' )) != false ){
      return $cached;
   }

	require_once(__DIR__ . '/library/php/twitter/TwitterAPIExchange.php');

	/** Set access tokens here - see: https://dev.twitter.com/apps/ **/
	$settings = array(
			'oauth_access_token' => 'YOUR_ACCESS_TOKEN_HERE',
			'oauth_access_token_secret' => 'YOUR_ACCESS_TOKEN_SECRET_HERE',
			'consumer_key' => 'YOUR_CONSUMER_KEY_HERE',
			'consumer_secret' => 'YOUR_CONSUMER_SECRET_HERE',
			'requestTokenUrl' => 'https://api.twitter.com/oauth/request_token',
			'authorizeUrl' => 'https://api.twitter.com/oauth/authorize',
			'accessTokenUrl' => 'https://api.twitter.com/oauth/access_token',
	);
	
	$ta_url = 'https://api.twitter.com/1.1/statuses/user_timeline.json';
	$getfield = '?screen_name=YOUR_FAN_PAGES_NAME_HERE';
	$requestMethod = 'GET';
	$twitter = new TwitterAPIExchange($settings);
	$follow_count = $twitter	->setGetfield($getfield)
								->buildOauth($ta_url, $requestMethod)
								->performRequest();
	$data = json_decode($follow_count, true);
	$followers_count=$data[0]['user']['followers_count'];
	$friends_count=$data[0]['user']['followers_count'];

	wp_cache_add( 'twitter_count', max($friends_count, $follow_count), 'sicon', 7200 );
	return max($friends_count, $follow_count);
}


Der obige PHP-Code fragt die Anzahl der Twitter-Follower von Ihrer Twitter-Fanseite ab und gibt diese zur weiteren Verwendung zurück. Es wird hier das Maximum der Variablen „Freunde“ und „Follower“ zurückgegeben.

Fazit

Der obige Code kann kann von Ihnen frei verwendet und verändert werden und gibt Ihnen ein mächtiges Wertzeug an die Hand zum Entwickeln Ihrer eigenen Like-Box sowohl als Sidebar-Widget oder auch auf einer eigenen Unterseite Ihres WordPress-Blogs oder Ihrer Webseite.