2012年6月20日水曜日

Blogger にソーシャル系ボタンを設置する方法


ここで言うソーシャル系ボタンとは
  1. Twitter
  2. Facebook
  3. Google+
  4. はてなブックマーク
です。

僕がいま使用しているテンプレートと相性が悪いのか、Bloggerで設定しても反映されません。
(ていうかバグやろ…(怒))

なので、他のサイトを参考に設置してみました。

今回のバグ起因でBloggerについてのエントリが連続してしまうのは正直 不本意ですが、面倒くさかったので書いておきます。

このエントリの目次
  1. 普通の設定方法
  2. 貼り付けるコード
  3. Bloggerに貼り付ける
  4. さいごに

1.普通の設定方法
Bloggerにソーシャル系のボタンについての設定があるので、おそらく普通はそれで設置できるんだと思います。
簡単に手順だけ書くと…
  1. Bloggerの設定画面の「レイアウト」にいく
  2. 「ブログの投稿」ボックスの「編集」ボタンをクリック
  3. 「ブログの投稿の設定」が別ウィンドウで開く
  4. 「[共有] ボタンを表示する」にチェックを入れる
  5. ドラッグアンドドロップでモジュールの位置を設定
  6. 「保存」ボタンを押して完了

これで設定してるはずなのに、当ブログには反映されてませんでした。
なので、直接HTMLを編集して設置しました。

2.貼り付けるコード
以下をコピペ。
<div style='margin: 4px 0px 0px 0px;'>
  <ul>
    <!-- Twitter -->
    <li style='display:inline-block; list-style-type: none;'>
      <a class='twitter-share-button' data-count='horizontal' data-lang='ja' expr:data-text='data:post.title + " : " + data:title' expr:data-url='data:post.url' href='http://twitter.com/share'>Tweet</a>
      <script src='http://platform.twitter.com/widgets.js' type='text/javascript'/>
    </li>
    <!-- Facebook -->
    <li style='display:inline-block; list-style-type: none;'>
      <iframe allowTransparency='true' expr:src='"http://www.facebook.com/plugins/like.php?href=" + data:post.url + "&layout=button_count&show_faces=false&action=like&font=arial&colorscheme=light"' frameborder='0' scrolling='no' style='border:none; overflow:hidden; width:180px; height:21px;'/>
    </li>
    <!-- Google plus -->
    <li style='display:inline-block; list-style-type: none;'>
      <g:plusone expr:href='data:post.url' height='20' size='medium'/>
    </li>
    <!-- Hatena bookmark -->
    <li style='display:inline-block; list-style-type: none;'>
      <a class='hatena-bookmark-button' data-hatena-bookmark-layout='standard' expr:data-hatena-bookmark-title='data:post.title + " : " + data:title' expr:href='"http://b.hatena.ne.jp/entry/" + data:post.url' title='このエントリーをはてなブックマークに追加'><img alt='このエントリーをはてなブックマークに追加' height='20' src='http://b.st-hatena.com/images/entry-button/button-only.gif' style='border: none;'/></a>
      <b:if cond='data:post.isFirstPost'>
<script async='async' charset='utf-8' src='http://b.st-hatena.com/js/bookmark_button.js' type='text/javascript'/>
      </b:if>
    </li>
  </ul>
</div>

3.Bloggerに貼り付ける
まずHTMLエディタを表示する
Bloggerのテンプレートを手作業で編集していきます。

Bloggerの設定ページで「テンプレート」を選択し、「HTMLの編集」ボタンを押します。


下記のような画面になるので、「続行」ボタンを押します。


HTMLエディタが表示されたら、「ウィジェットのテンプレートを展開」にチェックを入れます。


HTMLを編集する
いよいよ編集開始です。
逐一 編集結果を確認しながらの作業になると思うので、最初にメモ帳とかにバックアップをとっておくことをオススメします。

ボタンをどこに設置したいかによってコードを貼り付ける場所は変わってきますが、僕の例を載せます。

「post-footer-line-2」という文字列で検索します。
すると、
<div class='post-footer-line post-footer-line-2'>
という箇所が見つかります。
僕のテンプレートでは二箇所見つかりましたが、上の方のみ編集しました。
(ざっとHTMLを眺めた感じ、上はPC向け、下はモバイル向け、のようです)

上の <div>タグの直後に、コードを貼り付けました。


すると以下のように、ソーシャル系ボタンが表示されました。


4.さいごに
Blogger に Twitter & Hatena & Google+1 & Facebook のボタンを設置する | Jkun Blogを参考にさせて頂きました。
各ボタンの横幅が揃わなかったので修正を試みましたが、諦めました。

それでは。

2012年6月18日月曜日

Blogger にTwitter Follow Badge を導入する方法


このエントリの目次
  1. Twitter Follow Badgeとは
  2. コードを生成する
  3. Bloggerに設置する
  4. さいごに

1.Twitter Follow Badgeとは

←これのコトです。

クリックすると、その人のツイッターにアクセスできます。

前から他のブログでよく見かけていましたが、今回、ようやく当ブログに導入するコトにしました。

2.コードを生成する
Twitter "Follow" Badge for your site/blogにて、自動でコード生成できます。


上記サイトにてツイッターアカウント、「Follow me」などの文字列、背景色、左右のどちらに表示するか、などを入力していきます。

そして、キャプチャの「UPDATE CODE」ボタンをクリックします(赤丸で囲んだ部分)。

すると、貼り付けるべきコードが表示されます。
あとはBloggerに設置するだけ!

3.Bloggerに設置する
テンプレートのHTMLを直接編集して設置します。

まずは、Bloggerの設定ページで「テンプレート」を選択し、「HTMLの編集」ボタンを押します。


すると、下記のような画面になります。
「上級ユーザーにのみおすすめします」という怖い注意書きがありますが、いつでもデフォルトに戻せるので気にせず、「続行」ボタンを押します。


以下のようなHTMLエディタが表示されます。


いよいよコードの貼り付けです。
</body>というタグを見つけ、そのすぐ上に先ほどのコードをペタリと貼り付けるのですが…。


でもコードを二箇所だけ、修正する必要があります
Bloggerで使うには、ちょっと修正が必要です。

<script>タグの直後の<!--と</script>タグの直前の-->を、それぞれ&lt;!--と--&gt;に修正します。

具体的に言うと…。

修正前。
<script src="http://www.go2web20.net/twitterfollowbadge/1.0/badge.js" type="text/javascript">
<script charset="utf-8" type="text/javascript"><!--
tfb.account = 'ico_mob';
tfb.label = 'follow-me';
tfb.color = '#35ccff';
tfb.side = 'r';
tfb.top = 136;
tfb.showbadge();
-->
</script>

修正後。
<script src="http://www.go2web20.net/twitterfollowbadge/1.0/badge.js" type="text/javascript">
<script charset='utf-8' type='text/javascript'>&lt;!--
tfb.account = 'ico_mob';
tfb.label = 'follow-me';
tfb.color = '#35ccff';
tfb.side = 'r';
tfb.top = 136;
tfb.showbadge();
--&gt;
</script>


あとは、「テンプレートを保存」ボタンを押して、完了です!

4.さいごに
今更感はありますが、流行にのってみました。

よろしければフォローして下さい。
それでは。

参考にさせて頂いたサイト。
Twitter Follow BadgeをBloggerで使う方法 | 試行錯誤

2012年6月17日日曜日

UXデザインのプロセス その3


今回はスケッチとプロトタイプ、そして実装(本ブログのデザインリニューアル)です。
前回までの記事で、ストーリーボードの作成まで行いました。
今回はスケッチとプロトタイピングを行い、最後に本ブログを実際にリニューアルしてこのシリーズを終わりとします。
このエントリがアップされた時点では既にリニューアル後のデザインになっています。

このエントリの目次
  1. スケッチとプロトタイプとは
  2. まずは提供するべきデータと機能をリストアップ
  3. スケッチとプロトタイプの作成
  4. で、今のデザインになりました。新旧比較
  5. さいごに

1.スケッチとプロトタイプとは
どちらもUXデザインの初期の具現化ステップです。
が、以下のような違いがあります。

  • スケッチ
    アイデアの創出・具現化が目的で「探求」のステージ。より多くのアイデアを素早くたくさん具体化することが目的で、より良いものを選択していきます。
  • プロトタイプ
    実際の見た目に近いものを作成してフィードバックを得る「検証」のステージ。関係者へのプレゼンやユーザビリティテストなどを目的とします。

2.まずは提供するべきデータと機能をリストアップ
まずは、前回の記事で作成したストーリーボードの各ステップで、ユーザに提供するべきデータと機能をリストアップします。

当ブログでは下のようになりました。

まず第一に提供するべきなのは「分かりやすい本文」で、この点については考えるべき階層構造があまりないので、シンプルなものになりました。



3.スケッチとプロトタイプの作成
本来、スケッチは紙に書きだすなどして大量にアイデアを生み出すのがよいのですが、今回は 目的がシンプルなため、またBloggerのテンプレートデザインなどを使って実現したいUIがすぐに反映できるため、プロトタイプをスケッチと同時に行いました。

そのときに検討した項目を書いていきます。

配置するデータについて
  1. デザインの原則に従って、記事の本文を左側に、ナビゲーションを右側に配置する
  2. 記事本文のカラムについて
    1. 記事本文の下には、その記事のラベルを配置する。
    2. 各記事の最下部には、それ以外の要素を配置する。
    3. と思ったけど、なぜかその辺りの順番変更できないね…。
  3. 他エントリの導線となる要素以外は極力排除する。
    1. 美人時計とか旬が過ぎたし、本ブログで見る必要はないので削除する。
    2. Android関連のニュースのブログパーツは、英語だし見られていないはずなので削除する。
    3. 当ブログの読者一覧は特に知りたくないと思うので削除する。
  4. ナビゲーションの要素は使ってほしい機能の順に上から配置していく。
    1. 検索窓は最重要ではないけど、縦幅が狭くシンプルすぎて見落としやすいので一番上に配置する。
    2. 同じような内容の記事は割と近い日付で並び、タグ一覧よりも記事同士の関連性が高いので、月別の記事一覧を上に配置する。
    3. タグ(ラベル)一覧はPV順に並べたいけど方法が分からないので、とりあえずタグクラウドで妥協。
    4. よく検索されているエントリも配置したいが、それぞれ関連のないエントリが並ぶので下の方に配置する。
    5. 自己紹介は所詮おまけなので、ナビゲーションの下に配置する。
ビジュアルデザインについて
  1. ブログのメインカラーを青系の色にする。今までは緑だったのだけれど。(ブログのタイトルがWorld Wide Windblueなのに! 個人的にはこれが一番意味の分からないデザインでした)
  2. 記事本文は白背景に黒テキストにする
  3. 記事を読むときに目障りにならないように、全体を主張しすぎない色でまとめる
  4. 気楽に読んで欲しいので、パステル系の色を使って柔らかい雰囲気を出す
  5. 記事本文の構成がぱっと見で分かるように、タイトルと見出しの区切りを大きく分かりやすくする
記事の文章構成について
  1. タイトル
    1. 正確にシンプルで端的なものにする。検索にひっかかったときのタイトルの全文表示を目指すよりは、正確さを優先する
  2. 本文
    1. 小難しい印象を持たれないために、地の文は丁寧語で分かりやすい言い回しをする。ひらがなを多く使う。
    2. 検索エンジンで表示されたときに記事の内容が分かるように、概要を本文の一番上に書く。でも記事本文にスッと入ってほしいので、できたらアイスブレイク的なことも書く。
    3. アイスブレイクの効果を狙って、各記事の一番上にはイラストや写真を入れる。
    4. サンプルコードとキャプチャ画像をたくさん入れて、ユーザが迷ったり悩む回数を減らす。
    5. 各見出しの内容が一画面を超える長さの場合は、できるだけ分割する

これらのコトを意識し、Bloggerのテンプレートデザインでトライアンドエラーを繰り返しました。

4.で、今のデザインになりました。新旧比較
だいぶすっきりとした印象になりました。
右側のタグクラウドなどはまだ気に食わないですが、できたら随時修正していこうと思います。

旧バージョンのキャプチャを貼ります。







見出しと地の文がパッと見で区別がつきにくくて、ゴチャコチャしている感じです。
ざっとスクロールしたとき、記事の構成がわかりづらいです。
ここが今回なおしたかった最大のポイントです。

素人が中途半端にデザインするもんじゃないですな。

ちなみに本文の横幅は 前のバージョンでは意図的に狭くしてたのですが(視線の横移動がだるい)、それだとサンプルコードが見づらくなるので、今回は仕方なくデフォルトの幅にしています。

ていうかなんでメインカラーを緑に選択したのか…(ブログのタイトルがWorld Wide Windblueなのに!)(二回目)。
まあ単純に緑色が好きだからだったんですが。

5.さいごに
これで、UXデザイン入門―ソフトウェア&サービスのユーザーエクスペリエンスを実現するプロセスと手法を参考にしたシリーズを終わります。

「当ブログが見やすくなった」っていう人がいらっしゃいましたらコメント頂けると嬉しいです!

UXについてはまだまだ初心者レベルですので、これからも勉強していきます。
情報アーキテクチャも勉強していこうと思っています。

また、ソーシャル系やモバイル系も最適化していこうと思っています。

それでは。

参考書籍

2012年5月22日火曜日

(追記) UXデザインのプロセス その2


追記
このエントリではUXデザインのプロセスのうち、ストーリーボード作成まで実施しています。
次のスケッチ、プロトタイプ、実装についてはコチラ!

今回はUXデザインとしてストーリーボード作成をします
前回の記事ではデザイン調査とペルソナ作成をしてみました。
このエントリでは、ストーリボードの作成をしていきます。

このエントリの目次
  1. ストーリーボードとは
  2. ストーリーボード作成の目的
  3. ストーリーの作成
  4. ストーリー作成のコツ
  5. ストーリーボードの作成
  6. さいごに

1.ストーリーボードとは
映像作品のプロセスでいう、「絵コンテ」にあたります。

2.ストーリーボード作成の目的
それは、ペルソナがしたいコトを提供する際、どのようなUXを提供するといいのか を追求するコトです。
このプロセスでは、実現可能性はそこまで深く考えず、とにかくペルソナが喜ぶようなシナリオを検討します。
そうするコトで、ペルソナが求めるUXに近づくことができるのです。

3.ストーリーの作成
ストーリーボードを作る前に、まずはそれのもととなるストーリーを考えます。
ペルソナの行動や関心を一区切りとして分割していきます。

このサイトを対象として、以下のように考えてみました。
ペルソナの名前を「太郎」とします。
ストーリー名:エントリの閲覧
  1. 太郎はあるワードで検索、結果に表示された記事の概要を見て当サイトへのリンクをクリックする
  2. 太郎はエントリを「ザッと」見て、目的に合致する内容だと「すぐに」思い、きちんと閲覧するコトにする
  3. 太郎はエントリに書いているサンプルコードや手順を、書いてあるとおりに「簡単に」試す
  4. 太郎は同じ話題を扱っているエントリを発見し、見に行く
  5. 以下、3. → 4. のループ

4.ストーリー作成のコツ
上でも述べましたが、コツは 実現可能性を無視しない程度に、とにかくユーザーにとって最高のシナリオを考えるコトです。

また、秘書型システム(このワードでググる)、道具型システム(このワードでググる)という考え方を知っていると、ストーリー作成の助けになります。

5.ストーリーボードの作成
以下のような絵を作成しました!


作成するときの注意点として、サービスの画面内容は書き込まないようにします。
なぜなら、書きこんでしまうと実際の画面を想定しまい、UXに集中できないからです。

6.さいごに
今回のエントリで、考えてなかった問題点が見えてきました。
エントリの出だしや当サイトの右カラムについて、検討の余地がありそうです。
「右カラムに美人時計が表示してるけど、誰得だよ…!」って思いました。

スケッチ、プロトタイプのプロセス に続く?!

参考書籍

2012年5月20日日曜日

HTTP Status Code を見るUIWebView のサンプルコード

はじめに
iOSの開発に手を出しました。
Objective-C は初でしたが、最初は意味不明でしたね。
特にメソッド呼び出しとデリゲートについて。

まあそれは置いておいて。

UIWebViewは簡単にWebページをブラウザできるのでよいのですが、なんとHTTP Status Codeを見れないようです。
404 Not Foundみたいな表示がそのまま出ちゃうと。
それはよろしくないので、HTTP Status Codeを見て、その後の処理を制御するサンプルコードを書いてみました。

このエントリの目次
  1. GitHubにあげたiOSプロジェクト
  2. ソースの重要な箇所
  3. 閑話休題 「GitHub for Mac」について
  4. さいごに

1.GitHubにあげたiOSプロジェクト
コチラになります。

2.ソースの重要な箇所
以下に貼付けます。
GitHubのソースの47〜77行目にあたります。
コメントを読めば処理の概要は分かると思います。
- (void)kick:(NSString *)url
{
    NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]];
    
    //UserAgentをセットします
    NSString *userAgent = [webView stringByEvaluatingJavaScriptFromString:@"navigator.userAgent"];
    [urlRequest setValue:userAgent forHTTPHeaderField:@"User-Agent"];
    
    //urlにアクセスします
    NSHTTPURLResponse *response;
    NSError *error;
    NSData *responseData = [NSURLConnection sendSynchronousRequest:urlRequest
                                                 returningResponse:&response 
                                                             error:&error];
    //何らかのエラーが出たとき
    if ([response statusCode] >= 400 || error) {
        UIAlertView *alert =
        [[UIAlertView alloc] initWithTitle:@"エラー" 
                                   message:[NSString stringWithFormat:@"HTTP STATUS CODE:%d", [response statusCode]]
                                  delegate:self 
                         cancelButtonTitle:@"確認" otherButtonTitles:nil];
        [alert show];
    }
    //正常なレスポンスのとき
    else {
        [webView loadData:responseData MIMEType:[response MIMEType] 
          textEncodingName:[response textEncodingName] 
                   baseURL:[response URL]];
        [self setView:webView];
    }
}

参考にしたサイト
  1. How do I get the last HTTP Status Code from a UIWebView? | Stack Overflow
  2. Changing the userAgent of NSURLConnection | Stack Overflow

3.閑話休題 「GitHub for Mac」について
Mac向けにGitHub for Macというクライアントツールがあります。
GUIでソースのコミットなどがとても簡単にできます。

操作方法はデザイナーのためのGithub for Mac の使い方「リポジトリ作成編」 | KUROIGAMEN(黒い画面)が詳しいです。

さてGitHub for Macですが、このオクトキャットの仕草や表情がめっちゃ可愛い!!


普通のオクトキャットはまぁまぁくらいですが、この絵は衝撃的可愛さ!
アイコンもこの絵なので、Dockに追加すれば いつでも見られます。

あと、いろんな格好をしたオクトキャットがいるサイトを見つけました。
マリオとかロックマンとかゼルダのリンクの格好したやつもいます。

4.さいごに
GitHub for Macのオクトキャット可愛い!

Related Posts Plugin for WordPress, Blogger...