Tweet数をWordPressのwp-hatenaで表示させる方法

By shin - 10/04/22 - このエントリをはてなブックマークに追加このエントリをYahoo!ブックマークに追加このエントリをdel.icio.usに追加このエントリをFC2ブックマークに追加

携帯サイトをつくろう。で「Tweet数」を表示する事になりました。

今ではいろいろなプラグインがあるので簡単にできますが、今回は以前からブックマーク数を表示していた隣に表示する事が前提になっています。プラグインを入れただけでは細かいデザインの調整、表示場所の細かい指定ができません。Retweetボタンもみなさんブラウザの拡張やブックマークレットでするでしょうから設置しません。

そこでブックマーク数を表示するのに使っているwp-hatenaを拡張して実現させることにします。

wp_hatenaを使う方法

これまでブックマークの表示にはwp-hatenaを使わせて頂いていたので、今回はそこにTweet数を表示する機能を追加する事にしました。

wp_hatena : WordPress Plugins/JSeries

wp-hatenaでは表示したいブックマークの種類ごとに関数があるので、そこにTweet数を表示する関数を追加すれば良いわけです。
例えば「はてなブックマーク」のブックマーク数を表示する関数はこんな感じです。
■public_html/wp-content/plugins/wp-hatena/wp-hatena.php (285行あたり)

	/**
	 * WP interface.
	 *
	 * @param none
	 * @return none (はてなブックマーク被ブックマーク用のタグを echo)
	 */
	function addHatenaCount() {

		echo
			$this->makeBookmarkCountURL(
				'はてなブックマーク',
				'http://b.hatena.ne.jp/entry/image/' . get_permalink(),
				'http://b.hatena.ne.jp/entry/' . get_permalink()
			);

	}

これにならって、Tweet数を表示できる関数を追加すると下記の様になります。また、今回Tweet数の画像を取得するのに下記サイトを利用させてもらいます。詳細は下記のAPIページでご確認ください。
Twib – Twitter ホットエントリー
Twib – Twib API

■public_html/wp-content/plugins/wp-hatena/wp-hatena.php

	/**
	 * WP interface.
	 *
	 * @param none
	 * @return none (tweet数のタグを echo)
	 */
	function addTweetCount() {
		echo
			$this->makeBookmarkCountURL(
				'Tweet',
				'http://image.twib.jp/counter/' . get_permalink(),
				'http://twib.jp/url/' . get_permalink()
			);
	}

こうして追加した関数をテンプレートの表示したい場所で呼び出します。
■public_html/wp-content/themes/テンプレート名/single.php

	<?php if(isset($wph)) {
		$wph->addHatenaCount();
		$wph->addYahooCount();
		$wph->addLivedoorCount();
		$wph->addTweetCount(); // コレを追加
		$wph->addHatena();
		$wph->addYahoo();
		$wph->adddelicious();
		$wph->addLivedoor();
		$wph->addFC2();
		$wph->addNifty();
		//$wph->addPOOKMARK();
		$wph->addBuzzurl();
		//$wph->addChoix();
		//$wph->addnewsing();
	}?>
	</div>

テンプレートにそのまま書く方法

もちろん、もっと簡単に下記の様にする方法もありますね。

<a href="http://twib.jp/url/<?php the_permalink() ?>" title="ツイート数" target="_blank"><img src="http://image.twib.jp/counter/<?php the_permalink() ?>" border="0" alt="" /></a>
Posted in 未分類 • Tags: , , Top Of Page