ブクログとは
ブクログとは、WEB上に自分の本棚を作成できるサービスです。レビューを記録できたり、本棚を公開できたりする(=自己紹介)のが便利なので、私も愛用しています。
ところでこのたび、その本棚をウィジェットとしてサイドバーに入れてみたのですが、デフォルトだと、改行位置とかテキトーだったりして、あまりオシャレじゃありません。というわけで改造してみました。
ブクログからAPIで本棚情報を取得する
下記のコードを「ウィジェットエリア」にテキストとして張付けましょう。
「fujimotoweb」になっているところは、ご自身のユーザー名に変えて使ってくださいね。
<script type="text/javascript"> function booklog_minishelf(json) { var items = json["books"]; var html = ""; for(var i = 0; i < items.length; i++) { var elem = items[i]; var text = '<ul class="bookshelf"><li class="bookImage"><a href="' + elem["url"] + '" target="_blank"><img src="' + elem["image"] + '" title="' + elem["title"] + '"width="52" height="75" alt="No Image" /></a></li><li class="bookTitle"><a href="' + elem["url"] + '" target="_blank">' + elem["title"] + '</a><div class="bookAuthor">' + elem["author"] + '</div></li></ul>'; html += text; } document.getElementById("recent_books").innerHTML = html; } </script> <div id="recent_books"></div> <div class="clear"></div> <script src="http://api.booklog.jp/json/fujimotoweb?category=0&status=3&rank=5&count=10&callback=booklog_minishelf"></script>
CSSの制御
下記の指定をstyle.cssに追加しましょう。デフォルトより少しだけオシャレになりますよ~。
#recent_books { margin: 0 auto; /*width: 600px;*/ } #recent_books h2 img { border: 0; vertical-align: baseline; } .userInfo { text-align: center; } .userInfo span { display: inline-block; margin: 0 10px; } .bookshelf { padding: 0; border: 1px solid #ccc; } .bookshelf li { margin: 0; padding: 10px; /zoom: 1; list-style-type: none; } .bookshelf li:after { clear : both; display: block; content : ''; } .bookshelf li:first-child { border: 0; } .bookImage { float: left; display: block; margin-right: 10px; margin-left: 0px !important; } .bookInfo { overflow: hidden; } .bookTitle { font-weight: 700; } .bookAuthor { margin-bottom: 5px; }
まとめ
- ウィジェットに改造済のタグ追加
- fujimotowebのところはご自身のユーザー名に
- CSSにサンプルコード追加しましょう