wp-hatenaを改造して設置。

  • このエントリーをはてなブックマークに追加
  • 80

ふと気付いたら Yahoo!ニュースにも「ソーシャルブックマークへ投稿」という項目ができていました。SBS の一般への広がりを再認識。先日 wp-hatena を色々な SBS に対応させてみましたが、今日はさらに Yahoo!ニュースで並んでいた SBS の中でまだ wp-hatena に追加していなかった SBS を追加してみました。
wp-hatena にさらに追加、合計 10 個の SBS に対応 – Numb.

この記事で見た「wp-hatena」なるプラグインに、はてな・livedoor・Buzzurlのブックマーク登録ユーザ数を表示するコードを追加して、このブログに設置してみた。

うーん。
なんか、ユーザ数が入る予定の場所がバレバレだな。表示はちょっと改善の余地アリかも。

ところで、ちょっと誰かテストのために登録してくれんかね。

ちなみに、やったことは以下のような感じ。

1.makeBookmarkURL関数を変更

ユーザ数画像は各サービスから取ってくるので、imgタグのsrc属性に「$this->plugin_path . 」があると邪魔。なのでどける。あと、幅と高さも明記されるとまずいので、0だったら書かないようにする。

  1. /**
  2.  * Bookmark URL maker.
  3.  *
  4.  * @param $sitename (サイト名称文字列)
  5.  * @param $url (URL)
  6.  * @param $iconfile (画像ファイル URL)
  7.  * @param $width (画像 width)
  8.  * @param $height (画像 height)
  9.  * @param $ext_url (その他の追加 URL)
  10.  * @return $tag (画像リンクタグ)
  11.  */
  12. function makeBookmarkURL($sitename, $url, $iconfile, $width, $height, $ext_url) {
  13.    
  14.     $tag  = '<a ';
  15.     $tag .= ' href="' . $url . $ext_url . '"';
  16.     $tag .= ' style="margin-right: 8px;" ';
  17.     $tag .= '>';
  18.     $tag .= '<img ';
  19.     /* この部分を変更し、「$this-/>plugin_path . 」を削除 */
  20.     $tag .= ' src="' . $iconfile . '"';
  21.     $tag .= ' alt="このエントリを' . $sitename . 'に追加"';
  22.     $tag .= ' title="このエントリを' . $sitename . 'に追加"';
  23.     /* width、heightに0を指定したらHTML中からは省略するように変更 */
  24.     if ( $width > 0 ) {
  25.         $tag .= ' width="' . $width . '"';
  26.     }
  27.     if ( $height > 0 ) {
  28.         $tag .= ' height="' . $height . '"';
  29.     }
  30.     $tag .= ' style="border: 0; margin: 0; padding: 0; vertical-align: middle;" ';
  31.     //$tag .= ' onmouseover="wpHatenaPopup()"';
  32.     $tag .= '/>';
  33.     $tag .= '</a>';
  34.    
  35.     return $tag;
  36.    
  37. }

この変更に併せて、各関数のアイコン画像のURLを引数に渡す部分を、このように変更。

  1. $this->plugin_path . 'hatena.gif'

2.表示関数追加

以下の3つの関数を追加。

  1. /**
  2.  * WP interface.
  3.  *
  4.  * @param none
  5.  * @return none (エントリーをはてなブックマークに登録しているユーザ数をecho)
  6.  */
  7. function addHatenaUsers() {
  8.    
  9.     echo
  10.         $this->makeBookmarkURL(
  11.             'はてなブックマーク',
  12.             'http://b.hatena.ne.jp/append?',
  13.             'http://b.hatena.ne.jp/entry/image/' . get_permalink() ,
  14.             0,0,
  15.             ''
  16.         );
  17. }
  18. /**
  19.  * WP interface.
  20.  *
  21.  * @param none
  22.  * @return none (エントリーをLivedoor Clipに登録しているユーザ数を echo)
  23.  */
  24. function addLivedoorUsers() {
  25.    
  26.     $title = $this->utf8_encode(get_the_title());
  27.    
  28.     echo
  29.         $this->makeBookmarkURL(
  30.             'Livedoor Clip',
  31.             'http://clip.livedoor.com/clip/add?link=' . get_permalink(),
  32.             'http://image.clip.livedoor.com/counter/' . get_permalink(),
  33.             0, 0,
  34.             '&amp;title=' . urlencode($title) . '&amp;jump=ref'
  35.         );
  36.    
  37. }
  38. /**
  39.  * WP interface.
  40.  *
  41.  * @param none
  42.  * @return none (エントリーをbuzzurlに登録している人数を echo)
  43.  */
  44. function addBuzzurlUsers() {
  45.    
  46.     $title = $this->utf8_encode(get_the_title());
  47.    
  48.     echo
  49.         $this->makeBookmarkURL(
  50.             'Buzzurl(バザール)',
  51.             'http://news.ecnavi.jp/config/add/confirm?url=' . get_permalink(),
  52.             'http://api.buzzurl.jp/api/counter/' . get_permalink(),
  53.             0, 0,
  54.             '&amp;title=' . urlencode($title)
  55.         );
  56.    
  57. }
スポンサーリンク
スポンサーリンク
  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
スポンサーリンク