携帯サイトをつくろう。で「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>