Top > July 2011 [全て閉じる]

WiMAX Wi-Fi モバイルルータ「URoad-8000」を使ってみた

July 31,2011 1:23 AM
Category:[mono]
Tag:[]
Permalink

先日購入したXperia Acroから少し遅れて、WiMAX Wi-Fi モバイルルータ「URoad-8000」を購入しました。

購入してから1週間ほど経つので、実際に使ってみた感想を交えて報告します。

1.URoad-8000を選択した理由

URoad-8000シンセイコーポレーションの製品で、何種類か出ているWiMAX WiFiモバイルルータの中では、連続通信時間約9時間と一番長持ちするタイプです。また重量も約98gとかなり軽いです。

WiMAX Wi-Fi モバイルルータ URoad-8000
株式会社シンセイコーポレーション

いろいろ調べると、NECの「AtermWM3500R」とプロバイダのセットが低価格で提供されていたのですが、AtermWM3500Rは、以下の理由で選びませんでした。

  • 「頻繁に通信が切断される」という評価をネット上でいくつかみかけた
  • バッテリーを自分で交換できない(交換するまで使うかどうか分かりませんが…)
  • 重量約120gと、URoad-8000よりちょっと重い
  • 低価格で提供されているということは、後継機種が出るのか、人気がないかのいずれかでは?と勘ぐってしまった(使っている人すいません)

なお、URoad-8000はクレードルがなくUSBポートもないので、「自宅で有線で使いたい」という人には不向きです。

2011.09.16追記
URoad-8000は充電しながら利用可能なことが判明しました。

2.選択コースと注意点

私はプロバイダにSo-netを使っているので「So-net モバイル WiMAX」を選択しました。

丁度、7月31日までキャンペーンをやっていたので、URoad-8000は定価19,800円→4,800円で購入できました。さらに、月額料金(4,200円)が初月無料、以降の11カ月間は3,590円になります。その他、登録事務手数料が別に2,835円かかります。

関連記事:So-net モバイル WiMAX、対応端末に「URoad-8000」などを追加

2年縛りはないので、1年で解約しても違約金は発生しません。その頃さらに高速な別のサービスが軌道に乗っているかもしれないので、乗り換えることを考えてこのコースにしました。解約してもモバイルルータの返却は不要です。

以下、WiMAXを始めるときに気をつけたいことを記しておきます。

まず、契約開始日は月初めにした方がいいです。私はいつから料金が発生するのかよく把握せずに契約してしまったのですが、機器が到着した日が開始日になるようです。

契約開始日(機器到着日)をどうやって決めるかは、機器購入時に配送日を指定するメニューがあったと記憶しています。私はそのメニューから「できるだけ早く」を選択してしまったのですが、これから購入される方は、到着日を月の1日や2日に指定すると良いでしょう。他のプロバイダでは開始日の定義が異なるかもしれないので、契約前に確認してください。

また、「できるだけ早く」を選択して機器が到着したのは、申し込んでから5日後くらいでした。契約から機器到着まで若干タイムラグがあるので、「すぐに使いたい」という方は気をつけましょう。

3.感想

機器が到着してから、Xperia AcroとURoad-8000を携帯し、通勤や休日に持ち歩いて接続状況を確認しました。使った場所は、電車内(総武線・中央線)、会社、レストラン、喫茶店などです。

行動した範囲では使えなかったエリアはほとんどありませんでした。速度も下りで2MB~10MBは普通に出ています。ただし社内では自席から外れると感度が悪くなり、通信できなくなるケースがありました。

電車内は、インターネットへのアクセスを頻繁に行う操作をしてみていますが、乗っている路線ではほとんど問題なくつながりました。たまにつながらない区間がありますが、ちょっと待てばすぐに回復するのでストレスがたまることはありません。むしろAndroidのデフォルトブラウザがよく落ちるので困ってます(他のブラウザはこれから試したいと思います)。

仕事中は基本的に携帯をほとんど操作しないので、URoad-8000の電源は切っています。したがって実際に9時間もつかどうかは試していません。URoad-8000の起動には30秒ほどかかるので、起動を待ちたくない人は電源を入れっぱなしにしておいた方がいいかもしれません。

持ち歩くときは鞄やセカンドバックにいれてますが、98gという軽さなのでまったく気になりません。なお、URoad-8000に限らないと思いますが、作動中は「暖かい」という程度に熱を帯びます。

4.まとめ

今回、携帯をWiMAXメインで使うという試みで、初めてWiMAXを本格的に始めてみましたが、私のようにそれほど頻繁に携帯を使わない・PCなどでもインターネットを利用したいという形態であれば、URoad-8000の選択は正解だったと思います。

外出先でPC接続もまだ行ってなく、ここ1週間の外出先も限られていたので、また何かあれば適宜報告したいと思います。

Comments [2] | Trackbacks [0]

Movable Type 5.1にアップグレードしました

July 30,2011 2:30 AM
Category:[アップグレード]
Tag:[, , ]
Permalink

当ブログを、Movable Type 5.04から5.12にアップグレードしました。

クレジット

以下、5.0xから5.1xへのアップグレード手順を掲載します。ちなみに当ブログのアップグレード前のバージョンは5.04でした。

1.ブログのバックアップ

アップグレード前(5.0x)のブログのバックアップを取得します。

バックアップした後、正しくバックアップされているかどうか、バックアップファイルを確認した方が良いでしょう。圧縮ファイルでバックアップした場合、バックアップファイルを解凍すれば、XMLファイルなどがテキストエディタで確認できます。
またはバックアップを2回繰り返し、同じサイズになっていれば、経験上大丈夫だと思います。

なお、バックアップはアップグレード前だけでなく、定期的に行いましょう。

2.アプリケーションディレクトリのリネーム

「アプリケーションディレクトリ」は、mt.cgi などがあるディレクトリです。このアプリケーションディレクトリ自体を FTP ツールでリネームして、プログラムを上書きしないようにしています。

例えば、アプリケーションディレクトリ名が

mt

であれば、

mt--

などに変更します。

なお、アプリケーションディレクトリ名を変更した後、一時的にブログ管理画面にアクセスできなくなりますので、注意してください。

3.アプリケーションディレクトリ作成

リネーム前と同じディレクトリを FTP ツールで(同じ位置に)作成します。上の例では、

mt

というディレクトリを作成します。

4.Movable Type 5.1xのアップロード

Movable Type 5.1xのプログラム一式を、アプリケーションディレクトリ配下にアップロードします。

スタティックディレクトリをアプリケーションディレクトリと別のディレクトリに配置している場合は、スタティックディレクトリも手順2~3と同じ要領でディレクトリを作成すると良いでしょう。

5.CGIファイルの属性変更

4項でアップロードした、アプリケーションディレクトリ直下にある各CGIファイル(.cgi)の属性を 644 から 755 や 705 などに変更します(サーバ上でアーカイブを展開した場合はこの作業は不要です)。変更する属性が分からない場合は、旧アプリケーションディレクトリの CGI ファイルを参照してください。

6.ブラウザから mt.cgi にアクセス

mt.cgi にアクセスするとアップグレードが開始画面になるので「アップグレード開始」をクリックします。

アップグレード開始

サインインします。

サインイン

アップグレードが開始します。完了したら「Movable Type に戻る」をクリックします。

アップグレード開始

ユーザーダッシュボードが表示されます。

ユーザーダッシュボード

7.プラグインファイルのコピー

旧アプリケーションディレクトリから必要なプラグインをコピーします。外部のテンプレートセットを利用していた場合は、必ず新しい plugins ディレクトリに外部テンプレートセットのディレクトリを、plugins ディレクトリにコピーしてください。場合によっては mt-static/plugins ディレクトリからのコピーも必要です。

なお、以下の方法を利用すれば、プラグインをコピーする手間が若干省けます。私はこの方法を採用しています。

Movable Type のアップグレードで旧アプリケーションディレクトリのプラグインを新アプリケーションディレクトリにコピーしない方法

MT5.1に対応していないプラグインがいくつかあったので入れ替えました。

Comments [0] | Trackbacks [0]

MTEntriesタグのcategoryモディファイアに「AND」を含むカテゴリを指定する

July 29,2011 1:55 AM
Category:[カテゴリー]
Tag:[, ]
Permalink

MTEntriesタグのcategoryモディファイアに「AND」を含むカテゴリ名を指定した場合の動作について紹介します。

例として、「foo and bar」というカテゴリが登録されており、MTEntriesタグのcategoryモディファイアにこのカテゴリ名を設定します。

<mt:Entries category="foo and bar">
<mt:EntryTitle>
</mt:Entries>

1.MTEntriesタグのcategoryモディファイアについて

MTEntriesタグのcategoryモディファイアに「AND」「OR」「NOT」を設定すれば、複雑な条件によるフィルタリングが可能です。

例えば、fooカテゴリと、barカテゴリに属するブログ記事を取得する場合は、次のように記述します。「AND」は小文字でも構いません。

<mt:Entries categories="foo AND bar">

fooカテゴリ以外のカテゴリに属する記事を取得する場合は次のようにします。

<mt:Entries categories="NOT foo">

2.カテゴリ名に「AND」が含まれる場合の動作

「AND」や「OR」をカテゴリ名に含んでいる場合、これらは条件としてではなく、先にカテゴリ名として評価するようです。

よって冒頭のサブテンプレートは、「foo and bar」というカテゴリに属するブログ記事を出力します。

<mt:Entries category="foo and bar">
<mt:EntryTitle>
</mt:Entries>

ただし大文字・小文字を区別するようなので、categoryモディファイアを次のように設定すれば、「foo and bar」というカテゴリではフィルタリングされず、「foo」と「bar」の両方が設定されたブログ記事を取得します。

<mt:Entries category="foo AND bar">
<mt:EntryTitle>
</mt:Entries>

この動作は、MT4.27/5.06/5.12で確認しています。

Comments [0] | Trackbacks [0]

Facebookメッセージの「その他」について

July 28,2011 2:30 AM
Category:[Facebook]
Tag:[]
Permalink

Facebookにはメッセージ機能があります。Facebook上のユーザーや外部のメールアドレスとメッセージのやりとりが行えます。チャットログやテキストメッセージもここに保存されます。

メッセージ

「メッセージ」をクリックすると「その他」というメニューが表示されます。以前、このメニューを見落として受信メッセージに気つかずにいる人が多いと話題になりました。

その他

このエントリーでは、「メッセージ」と「その他」の違いなどについて調べてみました。

1.「メッセージ」と「その他」の違い

「ヘルプ」によると次の違いがあるようです。

ヘルプセンター - メインの[メッセージ]フォルダの下にある[その他]サブフォルダは何ですか。

[その他]フォルダには、メールリストと大規模な配布グループに送信されたメッセージと、友達および友達の友達以外の人からのメッセージが入れられています。

と、よく分かりませんが、「新しいFacebookメッセージの詳細ページ」には、「知らない人からのメッセージやダイレクトメールは「その他」のフォルダに保管されます。」という記載がありました。

新しいFacebookメッセージの詳細ページ

「知らない」というのはユーザーが「友達」または「友達の友達」として認めていないメールのようです。試しに、Facebook上で一度も送受信していない携帯アドレスからFacebookのメールアドレス送信したメールは、「その他」に放り込まれました。

2.メッセージの移動

「その他」のメッセージに返信すれば、返信メッセージも含め、自動的に「メッセージ」に移動するようです。

手動で「メッセージ」に移動するには、メッセージを開いた画面右上にある「アクション」→「[メッセージ]に移動」を選択します。

「メッセージ」に移動

逆に「メッセージ」から「その他」に移動するには、メッセージを開いた画面右上にある「アクション」→「移動」を選択します。

「その他」に移動

Comments [0] | Trackbacks [0]

FacebookのJavaScript SDKがOAuth 2.0サポート

July 27,2011 3:17 AM
Category:[Facebook]
Tag:[, ]
Permalink

2011年7月22日より、FacebookのJavaScript SDKがOAuth 2.0サポートを開始しました。

Updated JavaScript SDK and OAuth 2.0 Roadmap
開発者ブログ

以下、上記の記事からの抜粋です。

1.OAuth 2.0の有効化

まず、OAuth 2.0を有効にするには、FB.initにoauthパラメータを追加します。

FB.init({
   appId : YOUR_APP_ID,
   // other parameters,
   oauth : true
});

2.レスポンスデータ

OAuth 2.0を有効にした場合、レスポンスデータのsessionをauthResponseに置き換える必要があります。

sessionの利用

FB.login(function(response) {
  if (response.session) {
    console.log("User is connected to the application.”);
    var accessToken = response.session.access_token;
  }
});

authResponseの利用

FB.login(function(response) {
  if (response.authResponse) {
    console.log("User is connected to the application.”);
    var accessToken = response.authResponse.accessToken;
  }
});

3.FB.getLoginStatus

FB.getLoginStatusは、接続ユーザーのsessionの代わりにauthResponseを受信することを除いて、以前と同様に動作します。

サンプルは次の通りです。

FB.getLoginStatus(function(response) {
  if (response.status === 'connected') {
    // the user is logged in and connected to your
    // app, and response.authResponse supplies
    // the user’s ID, a valid access token, a signed
    // request, and the time the access token 
    // and signed request each expire
    var uid = response.authResponse.userID;
    var accessToken = response.authResponse.accessToken;
  } else if (response.status === 'not_authorized') {
    // the user is logged in to Facebook, 
    //but not connected to the app
  } else {
    // the user isn't even logged in to Facebook.
  }
});

4.サンプルコード

下は、OAuth 2.0の完全なサンプルです(元記事から若干変更しています)。このサンプルはFacebookページ「小粋空間」の「OAuth 2.0 sample」でお試しください(SSLにも対応しています)。

<!DOCTYPE html> 
<html xmlns:fb="https://www.facebook.com/2008/fbml">
<head>
<title>New JavaScript SDK</title>
</head>
<body>
<div id="fb-root"></div>
<h2>Updated JS SDK example</h2>
<div id="user-info"></div>
<p><button id="fb-auth">...</button></p>
 
<script>
(function() {
  var e = document.createElement('script'); e.async = true;
  e.src = document.location.protocol 
    + '//connect.facebook.net/ja_JP/all.js';
  document.getElementById('fb-root').appendChild(e);
}());
window.fbAsyncInit = function() {
    FB.init({ appId: '196288800426188',
        status: true, 
        cookie: true,
        xfbml: true,
        oauth: true
    });
 
    function updateButton(response) {
        var button = document.getElementById('fb-auth');
        var userInfo = document.getElementById('user-info');
        if (response.authResponse) {
            //user is already logged in and connected
            FB.api('/me', function(response) {
                userInfo.innerHTML = '<img src="https://graph.facebook.com/'
                  + response.id + '/picture" style="margin-right:5px" />'
                  + response.name;
                button.innerHTML = 'Logout';
            });
            button.onclick = function() {
                FB.logout(function(response) {
                    userInfo.innerHTML="";
                });
            };
        } else {
            //user is not connected to your app or logged out
            button.innerHTML = 'Login';
            button.onclick = function() {
                FB.login(function(response) {
                    if (response.authResponse) {
                        FB.api('/me', function(response) {
                            userInfo.innerHTML = 
                              '<img src="https://graph.facebook.com/' 
                              + response.id + '/picture" style="margin-right:5px" />'
                              + response.name;
                        });
                    } else {
                        //user cancelled login or did not grant authorization
                    }
                }, {scope:'email'});
            }
        }
    }
    // run once with current status and whenever the status changes
    FB.getLoginStatus(updateButton);
    FB.Event.subscribe('auth.statusChange', updateButton);
};
</script>
</body> 
</html>

5.ロードマップ

ロードマップによると、7月22日時点ではJavaScript SDKの他に、次の点が変更されています。

  • アプリの「Migration(移行)」項目の変更
  • 設定項目の「OAuth 2.0 for Canvas」を「signed_request for Canvas」にリネーム
  • 「OAuth Migration」の追加
  • 新しいアプリ作成では「OAuth Migration」をデフォルトで「有効」に設定

マイアプリ」の設定画面
マイアプリの設定画面

開発者アプリ」の設定画面
開発者アプリの設定画面

7月29日には、PHP SDKのクッキーフォーマットがバージョンアップされる予定です。

Comments [3] | Trackbacks [0]

Facebookページにオーナーを表示する

July 26,2011 12:03 AM
Category:[Facebook]
Tag:[]
Permalink

Facebookページにオーナー(管理人)を表示するカスタマイズを紹介します。

通常、Facebookページの管理人はFacebookページ上に現れないようになっています。このカスタマイズを行えば、Facebookページのオーナーを左サイドバーに表示することができます。

カスタマイズ後のFacebookページ(赤枠部分にオーナーを表示)
カスタマイズ後のFacebookページ

1.オーナーを表示する

Facebookページのウォールなどの右上にある「Facebookページを編集」をクリック。

Facebookページのウォール

左メニューの「掲載コンテンツ」をクリック。

左メニュー

「ページオーナーを追加」をクリック。

掲載コンテンツ

表示したい管理人をチェックして「保存」をクリック。サンプルでは私だけですが、Facebookページの管理者が複数名いる場合、複数の管理人を選択できます。

管理人一覧

これで冒頭のスクリーンショットのようにFacebookページの左側に表示されます。管理ページにも次のように表示されます。

掲載コンテンツ

2.オーナーを非表示にする

非表示にする場合は「ページオーナーを編集」をクリックして、一覧からチェックを外します。

Comments [0] | Trackbacks [0]

Movable Typeでインクルード元のテンプレートを表示する「IncludeTemplateViewerプラグイン」バージョンアップ

July 25,2011 12:33 AM
Category:[管理画面]
Tag:[, , ]
Permalink

Movable Typeでインクルード元のテンプレートを表示する「IncludeTemplateViewerプラグイン」をバージョンアップしました。

1.機能

Movable Typeのテンプレート編集画面には、インクルードしているテンプレート一覧が表示されますが、インクルード元のテンプレートは表示されません。

プラグイン適用前のテンプレート編集画面
プラグイン適用前のテンプレート編集画面

このプラグインを利用すれば、インクルード元のテンプレートが表示されます。

プラグイン適用後のテンプレート編集画面
プラグイン適用後のテンプレート編集画面

2.変更点

今回のバージョンアップでMT5.1に対応しました。

また、グローバルテンプレートにも対応するようにしました。例えば、ウェブサイトやブログのテンプレートからグローバルテンプレートモジュールをインクルードしている場合、グローバルテンプレートモジュールの編集画面にブログのテンプレート名を出力します。

グローバルテンプレートモジュールの編集画面にブログのテンプレート名を出力

ただし、グローバルテンプレートについてはブログ・ウェブサイトのテンプレートを単純に検索して表示しているだけなので、同一名のテンプレートがある場合などは期待する表示にならない可能性があります。

また、ブログ・ウェブサイトのテンプレートについては、他のブログ・ウェブサイトのテンプレートを検索しないため、関連は表示されません。

3.プラグインのダウンロード

最新版のプラグインは以下のリンクからダウンロードできます。

IncludeTemplateViewer プラグイン
Comments [0] | Trackbacks [0]

アナログ放送本日正午終了

July 24,2011 2:34 AM
Category:[家電]
Tag:[]
Permalink

アナログ放送が本日正午終了します。ということで思い出エントリー。

私が住んでいるマンションはケーブルTVで自動的に地デジに切り替わる予定なのですが、7月に入ってもNHKの「アナログ放送終了まであとX日」という適当な感じのテロップが消えず、「もしかしたらこのまま切り替わらずに映らなくなるのでは?」という不安に陥りながらも、「やる気のないテロップを記念に撮っておこう」と思い、10日前から撮り始めたら終了5日前にデジタルに切り替わってテロップが出なくなりました。

ということで、せっかくなので並べておきます。オチはまったくありません。

あと10日
あと10日

あと9日
あと9日

あと8日
あと8日

あと7日
あと7日

あと6日
あと6日

ちなみに他局でアナログ放送しているところがありました。このアニメを見ているわけではありません。

きょう正午終了
あと1日

ちなみに日曜は輪番休日で出勤なので、最後のアナログ放送を目の当たりにできません。帰宅したらYouTubeで砂嵐に切り替わる瞬間を楽しみたいと思います。

いまだにブラウン管テレビを使っているのですが、見た目はアナログもデジタルも分かりませんね。てか、本当にデジタルに切り替わっているんでしょうか(笑)。

Comments [0] | Trackbacks [0]

Movable Typeで特定の拡張子のファイルをアップロードする方法

July 23,2011 12:55 AM
Category:[アイテム]
Tag:[, , ]
Permalink

Movable Typeのカスタムフィールドを使って、例えば、「.3g2」という3GPP2ファイルフォーマットのファイルをアップロードしようとすると、次のようなエラーになります。

アップロードエラー

理由は、Movable Typeでは「.3g2」ファイルがアップロード可能なアイテムとして登録されていないためと思われます。

本エントリーでは、このような未登録のアイテムをMTでアップロードできるようにするカスタマイズを紹介します。

1.デフォルトでアップロード可能なフォーマット

基本情報として、Movable Typeのデフォルト状態でアップロード可能なファイルフォーマット(拡張子)は次のとおりです。

  • 画像:gif/jpe/jpeg/png/bmp/tif/tiff/ico
  • 音声:mp3/ogg/aif/aiff/wav/wma/aac/flac/m4a
  • 動画:mov/avi/3gp/asf/mp4/qt/wmv/asx/mpg/flv/mkv/ogm

2.未登録フォーマットのファイルをアップロードする

未登録フォーマットのファイルをアップロードできるようにするには、環境変数AssetFileTypesをmt-config.cgiの末尾に追加します。

例えば、冒頭の「.3g2」という拡張子のファイルを追加するには、次の1行を追加します。

AssetFileTypes MT::Asset::Video=3g2

複数のフォーマットを追加する場合は、フォーマットをカンマ区切りで記述します。

AssetFileTypes MT::Asset::Video=3g2,m2v

画像フォーマットを追加する場合は次のフォーマットになります。「xxx」の部分に追加したい拡張子を記述します。

AssetFileTypes MT::Asset::Image=xxx

音声フォーマットを追加する場合は次のフォーマットになります。「xxx」の部分に追加したい拡張子を記述します。

AssetFileTypes MT::Asset::Audio=xxx
Comments [0] | Trackbacks [0]

Windowsでソースコードの差分を取得する方法

July 22,2011 1:33 AM
Category:[PC]
Tag:[, ]
Permalink

Windowsでソースコードの差分を取得する方法です。

差分を取得する方法は色々あると思いますが、私はLinuxのdiffコマンドをWindows上で実行しているので、その方法を紹介します。

1.UnxUtils.zipのダウンロード

注:ダウンロード先は2011年7月現在で確認できている内容です。

UnxUtilsにある「Download」クリック。次の画面で少し待てばダウンロードが開始します。

UnxUtils

2.UnxUpdates.zipのダウンロード

GNU utilities for Win32にあるUnxUpdates.zipをクリック。

UnxUpdates

3.UnxUtils/UnxUpdatesのインストール

ダウンロードしたUnxUtils.zip/UnxUpdates.zipをそれぞれ展開し、UnxUpdates.zipで展開したファイルを、UnxUtils.zipを展開した中にある、

C:¥UnxUtils¥usr¥local¥wbin

に上書きします。

ここではActivePerlをインストールしている例で進めますので、wbinフォルダを¥usrl配下に移動して、

¥usr
  ¥include
  ¥lib
  ¥share
  ¥wbin

とします。ActivePerlをインストールしていない場合は、

C:¥UnxUtils¥usr¥local¥wbin

のままで構いませんが、2項の設定内容が変わるので注意してください。

4.パスを通す

「パスを通す」というのは、WindowsやLinux等でコマンドを実行するときに、コマンド名だけを入力すれば良い状態を指します。今回の場合、wbinフォルダ配下にあるdiffというコマンドを実行しますが、パスが通っていないと

C:¥UnxUtils¥usr¥local¥wbin¥diff

とルートからのパスを入力しなければなりません。以下、手順です。

「スタート」→「コンピュータ」を右クリックして「プロパティ」を選択。

スタート

「システムの詳細設定」をクリック。

システム

「詳細設定タブ」の「環境変数」をクリック。

詳細設定タブ

「システム環境変数」にある「Path」を選択して「編集」をクリック。

詳細設定タブ

「変数値」の最後にパスの区切り文字";"を記述し、その後に「C:¥usr¥wbin」を追加します。

詳細設定タブ

1項でActivePerlのパスに移動していない場合は、「C:¥UnxUtils¥usr¥local¥wbin」を追加します。

パスが通っているかどうかの確認は、

「スタート」→「すべてのプログラム」→「アクセサリ」→「コマンドプロンプト」を開いて「diff」を入力します。パスが通っていれば次のように表示されます。

パスが通っている場合

パスが通っていないと下のようになります。

パスが通っていない場合

なお、システム環境変数を設定する前に開いたコマンドプロンプトではパスが通らないので、新しいコマンドプロンプトを開き直してください。

5.ソースコードの差分を取得する

ここではMovable Typeの最新バージョン(5.12)とひとつ前のバージョン(5.11)の差分を例にします。5.11と5.12を展開したフォルダは事前に用意しておいてください。

コマンドプロンプトで次のように入力します。

>diff -r [MT5.11のフォルダ] [MT5.12のフォルダ]

「diff」はファイルの差分を出力するコマンドです。「-r」はフォルダを再帰的にチェックするオプションです。MTのフォルダがCドライブ以外にある場合はフルパスで指定してください。

ここではCドライブ直下にMT-5.11-jaというフォルダとMT-5.12-jaというフォルダがある例で示します。実行すると次のように差分がずらずらと表示されます。

diffの実行

一番左に表示されている「<」が旧バージョンの内容、「---」の下に表示されている「>」が新バージョンの内容です。

また左端に表示されている「4c4」「1976a1967」などは、差分があった行番号と差分の種別(a:追加/c:変更/d:削除)を示しています。追加と削除については「---」はありません。

6.実行結果を保存する

実行結果をファイルに保存するには、画面に表示された内容をコピーするよりも、リダイレクションを使います。具体的には、コマンドラインの最後に「> [ファイル名]」を追加します。

次のように実行すれば、実行結果がコマンドプロンプトではなく、Cドライブ直下にhoge.txtというファイルに出力されます。

実行結果を保存

diffコマンドには他にも色々なオプションがあるので、ネットで検索してみると良いでしょう。

Comments [2] | Trackbacks [0]

docomoのスマートフォンを徹底的に安く利用する

July 21,2011 2:55 AM
Category:[mono]
Tag:[, ]
Permalink

先日「Xperia acro購入」でお知らせしたとおり、docomoのスマートフォンを機種変更しました。今回の機種変更を契機に、スマートフォンを徹底的に安く利用したい!ということで、データ通信はすべてWiFiでアクセスする方法を選択してみました。ただしspモードメールだけは継続利用します。

以下、この選択を行うにあたって色々調べて分かったことを並べておきます。調べていて一番分からなかったのは、spモードメールがWiFiだけで本当に使えるかどうかという点でしたが、それらについても全貌がほぼ明らかになりました。

利用イメージ

1.WiFiだけで利用したい理由

これまでの月額使用料は約7800円です(パケ・ホーダイ ダブル+タイプSS バリュー)。

通話はほとんど使わず、かといってTwitterなどで1日中インターネットにアクセスするわけでもありません。このようなプアな使い方でこれだけ課金されるのはかなり損な感じがしていました。

それとは別に、外出時にPCを使う機会があるので、以前からWiMAXも使ってみたいと思っていました。例えば、Facebookアプリの動作確認を行いたい場合などがあるのですが、そのためにはインターネットにアクセスする必要があります。ちなみに以前、一時的にWiMAXは使っていて、そのときは比較的良好だった印象です。

当時はWiMAXで長時間利用可能ないわゆる「モバイルWiMAXルーター」はありませんでしたが、2011年7月では選択肢がかなりひろがってきています。

2.コースと月額使用料

月額使用料を抑えるために、まず「メール使いホーダイ」というサービスに変更しました。

「メール使いホーダイ」は、iモードメールやspモードメールが通信料無料で使い放題になるサービスで、次のコースを組み合わることで自動的に「メール使いホーダイ」に契約することになるようです。

  • タイプシンプル バリュー or タイプシンプル
  • パケ・ホーダイ シンプル or パケ・ホーダイ ダブル2

私の場合、「タイプシンプル バリュー」と「パケ・ホーダイ シンプル」で組み合わせました。これで月々にかかる最低の使用料金は780円※です。これにspモードの月額使用料315円と合わせて、月々1,095円になります。

※「ファミ割MAX50」または「ひとりでも割50」に申込むこと

WiMAXの方は、仮にUQ WiMAXの「UQ Flat 年間パスポート」を契約すれば3880円/月になり、携帯の月額使用料は1095円+3880円と、これまでより2800円程度安くなります。モバイルWiMAXルーターもキャンペーンなどを利用すれば、無料~数千円で入手できます。さらにPCでWiMAXも使えることを考えれば、利用頻度という意味ではかなりお得な感じがします。

3.spモードメールは通信料無料か?

2項に書いた「メール使いホーダイ」の「通信料無料」というのは、「FOMA接続で無料(=パケ・ホーダイ シンプルやパケ・ホーダイ ダブル2のiモードメール/spモードメール部分に該当)」という意味だと思います。

よって、FOMA接続時のspモードメールは通信料無料のはずですが、他のアプリなどから自動的にFOMA接続が行われるとパケット通信が発生するので、FOMA接続は基本的にOFFの設定にすることにします。

参考までに、パケホーダイシンプルのパケット代等を記しておきます。

  • 1パケットあたりの料金:0.084円
  • 1パケットのバイト数128バイト
  • 上限5.985円のパケット数:71250パケット=9120000バイト

4.FOMA接続をなくすためには?

「設定」→「無線とネットワーク」→「モバイルネットワーク」→「データ通信を有効にする」のチェックをはずします。これでFOMA接続によるインターネットへのアクセスは一切行われなくなります。

この設定を変更しなければ、パケ・ホーダイ シンプルであれば最低料金(=0円)になるはずです。FOMA接続を行いたくない方は、端末を購入してSIMカード挿入直後にこの設定を行っておくことを推奨します。

2011.07.21追記
データ通信を無効にしても電話は普通に使うことができます。

5.spモードメールはWiFiで使えるか?

2011年2月1日より使えるようになっています。それ以前はWiFiでspモードメールが使えなかったようです。

参考:NTTドコモ報道発表資料 - spモードの機能を拡充

6.spモードメールの設定がWiFi経由で行えないが?

spモードメールをWiFiで利用する設定や、受信設定(受信許可・拒否)などはFOMA接続でしか行えません。しかもWiFi接続をOFFにする必要があります。

よって、spモードメールの設定を行う場合は、「設定」→「無線とネットワーク」→「モバイルネットワーク」→「データ通信を有効にする」にチェックをし、さらに「設定」→「無線とネットワーク」→「WiFi」をOFFにします。

「これではspモードメールの設定を行うたびにFOMA接続で課金されるのか・・・」と思いましたが、5項の報道発表資料の一番下の※4に次の記載がありました。

※4 spモード各種設定サイトはFOMA回線からのみ接続が可能です(Wi-Fi設定はOFF)。spモードメール各種設定画面サイトへのアクセスにFOMAパケット通信料は発生いたしません(国内からの場合)

ということで、spモードメールの設定については、FOMA接続でも料金が発生しないようです。ただしFOMA接続をONにした際に他のアプリの自動接続などが発生すると課金対象となるので注意しましょう。

7.WiFiが使えない場所ではspモードメールの受信はできないのか?

WiFiが使えない場合、spモードメールの送受信は行えませんが、メール通知のみは行われます。

これはspモードメールの受信通知がFOMAのSMS(ショートメッセージ)で行われるためです。SMSによる受信通知は料金かかりません。念のためドコモに問い合わせて確認済です。

7項のタイトルからそれますが、一般的な使い方として、外出時はメール通知のためにモバイルWiFiルータを常時ONにしておく必要はなく、SMSでspモードメールの受信が通知されたときにモバイルWiFiルータをONにして、(WiFiが接続されれば)メール本文を受信すればいい訳です。WiFiが使えない場所であればFOMA回線をONにすればメールが受信できます(通信量は無料なので)。

自宅で実験したところ、SMSによるメール通知はメール送信してから数秒で行われるようです。

8.自宅でスマホを使う場合は?

自宅で無線LANルータを使っているのであれば、そのままWiFiが使えるので問題ないと思います。

私の場合、自宅のフレッツ光ルータに有線ブロードバンドルータをつないでいるので、そこからさらにWiFi接続で使えるルータ「MZK-MF300N」をつないで使っています。定価5250円ですが、Amazonで買えば約2900円です。

この機種には新製品も出ています。

9.他にFOMA接続が必要なものはないか?

すべてを試した訳ではありませんが、iD(おサイフケータイの1サービス)の設定にはFOMA接続が必要なようです。

10.まとめ

結局spモードメールの調査内容がメインになってしまいましたが、今回調べて分かったことをまとめました。

  • 月額料金は1050円+WiMAX使用料
  • WiFiでspモードメールは利用可能
  • spモードメールはFOMA接続で通信料無料だが、アプリなどの通信が自動で行われると課金される可能性があるので、FOMA接続は基本OFF
  • spモードメールの通知はSMSで行われる
  • spモード設定はFOMA接続ON(WiFi接続OFF)で行う。通信料は無料

利用イメージは次のようになります。

利用イメージ

11.その他

気になるWiMAXの通信品質やFOMA回線との体感速度の違いなどについては、実際に月額料金がいくらになったかなども含め、いずれお知らせしたいと思います。以下の記事を追加しました。

2011.07.22
「社名の表記が古い」というご指摘がありましたので変更しました。

Comments [0] | Trackbacks [0]

「Facebookページプロフェッショナルガイド」重版決定

July 20,2011 2:22 AM
Category:[書籍]
Tag:[, ]
Permalink

7月9日に発売された「Facebookページプロフェッショナルガイド」の重版が決定しました。

Facebookページ プロフェッショナルガイド
蒲生トシヒロ 竹村詠美 原裕 大元隆志 井出一誠 マクラケン直子 ホシナカズキ 藤本壱 荒木勇次郎 関根元和
毎日コミュニケーションズ
売り上げランキング: 699

発売開始からわずか10日で重版が決まりました。お買い上げくださった皆様、ありがとうございます!

Amazonのレビューでも大変ありがたい内容を頂いてます。

Facebookページを持っている人は、是非お手元へ

facebookページを運営している人、かつそのfacebookページと連携するウエブサイト-特にインストール形のWordPressや MovableType-を運用している人にとっては、目から鱗がこれでもかっ、というぐらい落ちる本です。価格以上の価値は充分にあります。

上記のAmazonのリンクが在庫なしの場合は、以下のリンクからもご確認ください。

Comments [0] | Trackbacks [0]

FacebookのIFrameタブページでスクロールバーを消す方法

July 19,2011 2:55 AM
Category:[Facebook]
Tag:[, ]
Permalink

FacebookのIFrameタブページに表示されるスクロールバーを消す方法のまとめです。

1.スクロールバーが発生するケース

スクロールバーは、コンテンツサイズが高さ800px・幅520pxを超えると自動的に表示されるようです(CSSでbodyセレクタにmargin:0; padding:0;を指定した場合)。

下のスクリーンショットは、サイズをちょっと超えた、青枠だけの画像を表示したものです。

IFrameタブページにスクロールバーが表示された状態
<br />
スクロールバーが表示された状態

「高さ800px・幅520px」という値はブラウザ依存なので、大体の目安と理解しておくと良いでしょう。

参考までに、ブラウザ別のスクロールバーが表示されなかった最大サイズを掲載しておきます。計測は、コンテンツにimg要素を与え、width属性とheight属性を指定した方法で行っています。すべてOSはWindows VISTAです。

Google Chrome 12
width:519px height:798px

Firefox 3.6/4(多分5も同じ)
width:520px height:795px

Safari 5
width:520px height:795px

IE9
width:520px height:795px

本エントリーでは次のようにスクロールバーを消す方法を紹介します。

IFrameタブページのスクロールバーを非表示にした状態
<br />
スクロールバーが表示された状態

2.FB.Canvas.setAutoGrow()でスクロールバーを消す

注:記事投稿時に掲載していたsetAutoResize()は2012年1月1日より利用できなくなるため、代替関数であるsetAutoGrow()に書き換えました。

FB.Canvas.setAutoGrow()を利用してスクロールバーを消すには、コンテンツのscript要素内に次のように設定します。

window.fbAsyncInit = function() {
    FB.Canvas.setAutoGrow();
};
参考:
FB.Canvas.setAutoGrow
FB.Canvas.setAutoResize(2011年12月31日まで)

setAutoGrow()のパラメータとして、次のものが用意されています。

  • on/off:setAutoGrow()のタイマを止めたい場合は、「off」または「false」を設定。デフォルトは「true(on)」。
  • interval:タイマのインターバルを変更したい場合にms単位で設定します。デフォルトは100msです。パラメータに数値のみが設定されている場合はintervalとして扱います。

実際に使う場合のscript要素は次のようになると思います。

<script>
(function() {
    var e = document.createElement('script'); e.async = true;
    e.src = document.location.protocol + '//connect.facebook.net/ja_JP/all.js';
    document.getElementById('fb-root').appendChild(e);
}());
window.fbAsyncInit = function() {
    FB.init({
        appId: 'アプリID',
        status: true,
        cookie: true
    });
    FB.Canvas.setAutoGrow();
};
</script>

なお、すべてのブラウザで表示が消えない場合は、「Facebookページプロフェッショナルガイド」の110ページの方法を行ってみてください。

3.FB.Canvas.setSize()でスクロールバーを消す

FB.Canvas.setSize()でスクロールバーを消すには、2項のFB.Canvas.setAutoGrow()の部分を次の内容に入れ替えてください。

FB.Canvas.setSize({ width: 520, height: 800 });

参考:FB.Canvas.setSize

スクロールバーが消えるタイミングはFB.Canvas.setAutoGrow()より早いので、コンテンツのサイズが固定であればこちらの方がいいかもしれません。

コールバックを利用した、次のような使い方があるようです。

function sizeChangeCallback() {
  FB.Canvas.setSize();
}

4.FB.Canvas.setAutoGrow()を設定してもスクロールバーが消えない場合

FB.Canvas.setAutoGrow()を設定したあと、コンテンツに高さが出ていない場合でもこの事象が発生するケースがあります。

コンテンツに高さが出ていない場合

原因は「Canvas URL」が未設定のためです。

「Canvas URL」を設定していない状態
「Canvas URL」を設定していない状態

そもそも「Canvas URL」は必須項目なのですが、IFrameタブを自分のFacebookページで表示したいケースでは「Canvas URL」を設定しなくても動作するため、この事象に陥ってしまったようです。

ということで、「Canvas URL」は必ず設定しましょう。

「Canvas URL」を設定した状態
「Canvas URL」を設定した状態

「Canvas URL」を設定すればIFrameタブにスクロールバーが表示されなくなります。

スクロールバーが消えた状態

Comments [0] | Trackbacks [0]

Xperia acro購入

July 18,2011 2:55 AM
Category:[mono]
Tag:[, ]
Permalink

本日、NTT docomo Xperia acro SO-02C(白)を購入しました。

NTT docomo Xperia acro

約2年前に購入したWindows Mobileのスマートフォン、T-01AからようやくAndroid端末に切り替わりました。ちなみに、半年ほど前にauのIS01は購入しています。

T-01Aが出始めた頃はまだiPhone以外にスマートフォンが販売されておらず、折りたたみ式ケータイが主流でした。そんな中、

「これからはスマートフォンの時代がきっとくる!」

と思いながらT-01Aを買いました(iPhoneにしなかったのはdocomoを使いたかっただけ)。そして予想通りスマホの時代がやってきた感じです。

T-01Aは感圧式ディスプレイやWindows Mobileという、今の潮流からそれた感じは否めませんが、それなりに気に入って使ってました。とりあえず2年間おつかれさま!(笑)

Xperia acroはAndroid 2.3搭載で、スマホ自体の機能も洗練されてきていると思いますが、おサイフケータイやワンセグ、赤外線通信など、既存ケータイの機能がほぼ網羅されています。

残念なのはテザリング(スマホを外部モデム代わりにして、パソコンなどをインターネットに常時接続させる機能)に対応していない点ですが、そこは割り切りました。

参考までに、ケータイで使っていたiモードメールをスマホで使う場合は、「spモード」に切り替えれば同じメールアドレスで利用可能です(月額使用料も多分同じ)。

今でこそspモードがありますが、T-01Aの発売当初はiモードメールも使えなかった(代替手段としてmoperaメールが提供されていた)ので、移行する人は多くなかったと推測します。ケータイの多くの機能がスマホで使える現在、移行にあたっての障壁はほぼないと言えるでしょう。

1.購入場所

発売日(すでに在庫切れ)に秋葉原のヨドバシで入荷時期を聞いたところ、

「早くても来月ですね」

と言われ、予約して気長に待つことにしましたが、今日、ネットを見ていると、

「新宿西口ヨドバシに大量入荷」

という情報をみつけ、急遽足を運びました。

情報は金曜日時点のもので、土曜や日曜の昼にも「買えた」という書き込みがありましたが、店に到着したのが仕事帰りの18:30で、さすがに売り切れているかなと思いつつ、店員さんにおそるおそる確認してみると、

「ありますよ。何色がいいですか?」

という予想外の返事で、即購入しました。日曜の遅い時間でもまだ在庫がたくさんあるような感じの返答だった(「ちょっと在庫確認してきます」みたいな応対ではなく、即答だった)ので、東京近郊在住の方で早く欲しいという方は、新宿西口のヨドバシ(03-3346-1010)に問い合わせてみるといいかもしれません。やはり本店の強みでしょうか。

秋葉原のヨドバシは予約を解除しました。

2.契約~購入まで

最初に対応してくれたdocomoの店員さんに、

「本日中にお渡しするのは無理かもしれません」

と言われたので、まあ仕方ないかと思いながら機種変更の手続きを待っていると、別の係員さんが再度確認にきて(受け渡し日を記したメモを見て)、

「明日のお渡しでいいんですか?」
「いえ、前の店員さんが『今日は無理かも』みたいなことを言われていたので」
「それでしたら今日中にお渡し可能ですが」

ということで、当日の21:45に受け取れることになりました。その間に店内をぶらぶらしながら、一番残り数が少なかった透明のシリコンソフトケースと保護シートを購入しました。

3.操作感

Xperia acroは、何かの雑誌にもコメントがありましたが、docomoの夏モデルの中では操作感がいい方だと思います。かなりiPhoneのあの滑らかな操作感に近づいてきている気がしました。T-01Aとは比べ物にならない進歩です(笑)。

4.その他

これまでのコースは、「FOMAタイプSS+パケホーダイダブル」で毎月7800円でした。今回コースを変更して、毎月の通信料を抑える計画をたてています。失敗するかもしれませんが、その件についてはまた別途エントリーしたいと思います。

そのため、docomoが勧める2年縛りコースは説明中にさくっとお断りしたので、端末代はほぼそのままかかりましたが、docomoポイントと、たまたま昨日届いた機種変更のクーポン券(最大3150円引き)を使って、約1万円引きで買えました。

Comments [0] | Trackbacks [0]

MovableTypeによる実用サイト構築術 ウェブシステムとしての活用ノウハウ MT5/5.1対応

July 17,2011 12:33 AM
Category:[書籍]
Tag:[, ]
Permalink

Movable Type 5.0/5.1を使ったウェブサイト制作書籍の紹介です。技術評論者様より献本頂きました。ありがとうございました。

本書は、

  • お問い合わせフォーム
  • イベント受付システム
  • グルメ情報サイト
  • 不動産検索サイト

の、「ユーザーの入力データを受け取って処理をする」という4つの案件を例に、Movable Typeによるサイト構築方法が解説されています。

書籍の特徴は、単に「お問い合わせフォームにはこのサンプルをコピーして使ってください」という内容ではなく、それぞれの案件について、Movable Typeをどのような構成にすればクライアントが要望するサイトを提供できるかというプロセスを中心に解説されています。検索サイトではパフォーマンスを考慮した設計についても記されています。

前半にはMovable Typeの概要やサイト制作に必要なテンプレートタグの説明も用意されており、順番に読み進めることで複雑なシステム構築へとステップアップできるようになっています。

執筆陣はMovable Typeを使ったサイト制作に精通された方達です。MTを使ったサイト制作を考えられている方、あるいは案件に対応する使い方をより知りたいという方にとって、安心して購入できる1冊です。

なお、本書では当ブログで公開している「CMSHeadプラグイン」を取り上げて頂きました。この場をお借りしてお礼申し上げます。

以下、目次です。

Introduction Movable Typeをウェブシステムとして使ってみよう

0.1 Movable Typeとは
Movable Type導入メリット
ウェブシステムとしての活用の可能性
0.2 本書の活用範囲
本書の想定対象者
本書で紹介するサンプル
Movable Typeによる構築が向いているウェブシステム
0.3 Movable Type 5/5.1の導入
Movable Type 5/5.1の動作環境
Movable Type 5/5.1のインストール方法

Chapter1 サイト構築前のチェックポイント

1.1 Movable Typeの基礎知識
テンプレート出力のオプションと「動的生成」「静的生成」
ウェブサイトとブログという管理のレベル
1.2 カスタムフィールドとテーマ
カスタムフィールド機能
効率よくウェブサイトやブログを作成できるテーマ機能
テーマのインストールと適用
テーマのアンインストール
1.3 テンプレートカスタマイズの基礎知識
コンテンツとロジックの明確な分離
テンプレートの概要
テンプレートタグ(MTタグ)の概要
テンプレート内の変数について
テンプレート内変数を使ったカスタマイズ
MTML(Movable Type Markup Language)
プラグインの概要

Chapter2 お問い合わせフォームを作ってみよう

2.1 お問い合わせフォームの仕様を考えよう
制作にいたるシナリオ(RFP)
サイトの完成イメージ
お問い合わせフォームに必要な要件
実装方針
2.2 お問い合わせフォームの制作手順
初期設定
テンプレート構造の確認
カスタムフィールドの設定
テンプレートのカスタマイズ
その他の追加設定
2.3 さらに活用するために

Chapter3 イベント受付システムを作ってみよう

3.1 イベント受付システムの仕様を考えよう
制作にいたるシナリオ(RFP)
サイトの完成イメージ
イベント受付システムに必要な要件
実装方針
3.2 イベント受付システムの制作手順
構築の流れ
初期設定
テンプレート構造の確認
カスタムフィールドの設定
テンプレートのカスタマイズ
実際にイベント募集記事を投稿してみる
CSVダウンロードの操作
3.3 さらに活用するために

Chapter4 グルメ情報サイトを作ってみよう

4.1 グルメ情報サイトの仕様を考えよう
制作にいたるシナリオ(RFP)
サイトの完成イメージ
グルメ情報サイトに必要な要件
実装方針
4.2 グルメ情報サイトの制作手順
初期設定
テンプレート構造の確認
カテゴリの設定
カスタムフィールドの設定
テンプレートのカスタマイズ
4.3 さらに活用するために

Chapter5 不動産検索サイトを作ってみよう

5.1 不動産検索サイトの仕様を考えよう
制作にいたるシナリオ(RFP)
サイトの完成イメージ
不動産検索サイトに必要な要件
開発のポイント
実装方針
5.2 不動産検索サイトの制作手順
構築の流れ
初期設定
テンプレート構造の確認
カスタムフィールドの設定
主要なテンプレートのカスタマイズ
検索システムを拡張するカスタマイズ
検索結果を表示するカスタマイズ
入力画面のカスタマイズ
5.3 さらに活用するために

Appendix

App1 スマートフォン対応とDynamicMTML
App2 高度なウェブアプリケーションを開発するために
App3 開発環境構築のテクニック
Comments [0] | Trackbacks [0]

「Facebookページプロフェッショナルガイド」売れ行き好調

July 16,2011 2:10 AM
Category:[Facebook]
Tag:[]
Permalink

7月9日に発売された「Facebookページプロフェッショナルガイド」のAmazonの売れ行きが予想以上に好調なので、宣伝がてら報告です。

Facebookページ プロフェッショナルガイド
蒲生トシヒロ 竹村詠美 原裕 大元隆志 井出一誠 マクラケン直子 ホシナカズキ 藤本壱 荒木勇次郎 関根元和
毎日コミュニケーションズ
売り上げランキング: 699

Amazonでは、発売当日に在庫切れになり、昨日入荷した16冊も1日で在庫切れになりました。ランキング(コンピュータ・IT部門)も連日20位以内をキープ中です。私が目撃した中での最高位は4位でした(下)。

本書は、マーケティング・テクノロジーの両面からFacebookページを解説し、さらにWebクリエイター8名によるサイトデザインの紹介もついた、Facebookページを活用するにあたって必要な情報が盛り込まれた、渾身の1冊です。

他のオンラインショップでは在庫があると思いますので、お急ぎの方は以下のリンクからご確認ください。Amazonもそのうち入荷されると思います。

Comments [0] | Trackbacks [0]

「いいね!」をしたFacebookページの一覧を見る方法のまとめ

July 15,2011 1:55 AM
Category:[Facebook]
Tag:[, ]
Permalink

すでにあちこちで紹介されている、「いいね!」をしたFacebookページの一覧を見る方法を当ブログでまとめてみました。

1.Facebookのデフォルト機能を使う(その1)

Facebookにログインして、右上の「プロフィール」をクリック。

プロフィール

左メニューの「基本データ」をクリック。

左メニュー

「好きな活動と趣味・関心」の「その他」に「いいね!」をしたFacebookページが表示されます。大量に「いいね!」をしている場合、ここにすべて表示されるかどうかは試していませんが、他のブログの記事で大量に表示されていたのをみかけたので大丈夫だと思います。

その他

「いいね!」を解除したい場合、「好きな活動と趣味・関心」の右側にある「編集」をクリック。

好きな活動と趣味・関心

「他のFacebookページを見る」をクリック。

好きな活動と趣味・関心

「いいね!」をしているFacebookページの一覧が表示されます。ここから解除することが可能です。

好きな活動と趣味・関心の編集

2.Facebookのデフォルト機能を使う(その2)

「Facebookページを活用」のページにアクセス。

Facebookページを活用
好きな活動と趣味・関心の編集

「マイFacebookページ」をクリック。

Facebookページを活用

「いいね!」をしているFacebookページの一覧が表示されます。

「いいね!」をしているFacebookページの一覧

3.Facebookアプリを使って見る

次のFacebookアプリを使えば、面倒な画面移動を行わずに、左メニューのアプリのリンクから進めるようになります。

fjlikepagesThe blog of H.Fujimoto - 「いいね!」をつけたFacebookページの一覧を表示するFacebookアプリ
fjlikepages

MyLikesBox
MyLikesBox

4.ウェブサービスを使って見る

LikeJournal」を使えば次のような画面でFacebookページの一覧を参照できます。

LikeJournal
LikeJournal

5.参考サイト

参考サイトは以下です。ありがとうございました。

Comments [2] | Trackbacks [0]

Movable Typeの記事一括編集画面をパワーアップする「PowerEdit プラグイン」をバージョンアップ

July 14,2011 12:55 AM
Category:[管理画面]
Tag:[, , ]
Permalink

Movable Typeの記事一括編集画面をパワーアップする「PowerEdit プラグイン」をバージョンアップしました。

1.機能

「PowerEdit プラグイン」は、Movable Typeのブログ記事・ウェブページ一括編集画面の編集項目を拡張します。このプラグインを適用すれば、デフォルトの項目の他に、次の項目を編集することができます。

  • 本文
  • 追記
  • タグ
  • キーワード
  • コメント受信設定
  • トラックバック受信設定

2.変更点

プラグインをMovable Type 5.1x対応にしました。MT5.1xでは次のように表示されます。

対応後のレイアウト
PowerEdit プラグイン

今回の変更はテンプレートファイルのみです。なお、テンプレートファイルはこれまでの

alt-tmpl/cms/include/entry_table.tmpl

から

alt-tmpl/cms/edit_entry_batch.tmpl

に変更になりました。

3.プラグインのダウンロード

最新版のプラグインは下記のページよりダウンロードしてください。

PowerEdit プラグイン

4.カスタムフィールドを表示する方法

PowerEditプラグインではカスタマイズすることによってカスタムフィールドを表示することもできます。

PowerEdit プラグイン

カスタムフィールド追加については、個別のカスタマイズも有償で承ります。なおすべての種類のカスタムフィールドを表示できるものではありませんので予めご了承ください。

自力でカスタマイズできる記事も「PowerEdit プラグインでカスタムフィールドを表示する(MT5:テキスト編)」で公開でしています。

Comments [0] | Trackbacks [0]

スマホサイト制作に役立つ「ArchivePathSelectorプラグイン」バージョンアップ

July 13,2011 1:33 PM
Category:[管理画面]
Tag:[, , ]
Permalink

Movable Typeでのスマホサイト制作に役立つ「ArchivePathSelectorプラグイン」をバージョンアップしました。

1.ArchivePathSelectorプラグインの概要

このプラグインの目的は、「iPhone 用テンプレートセット」などを使ったスマホ用サイトのアーカイブページに、PC用サイトのアーカイブURLを適用させないことです。

具体的には、Movable Type のブログ管理画面の「設定」→「公開」でアーカイブURLを設定している場合でも、アーカイブテンプレートの出力先としてサイトURLが選択できるようになり、結果としてアーカイブページのURLを自由に設定できます。

下のイメージは、スマホ用サイトのURLを、ページの種別にかかわらず「サイトURL/i」としたい場合の例です。

プラグイン適用イメージ
プラグイン利用イメージ

機能の詳細は「ArchivePathSelector プラグイン」をご覧ください。

2.修正内容

プラグインをMT5.1対応にしました。

MT5.1のアーカイブテンプレート編集画面
アーカイブテンプレート編集画面

3.プラグインのダウンロード

最新版のプラグインは以下のリンクからダウンロードできます。

ArchivePathSelectorプラグイン
Comments [0] | Trackbacks [0]

Facebook開発者アプリ「Test Users」でユーザー名の指定が可能に

July 12,2011 1:55 AM
Category:[Facebook]
Tag:[]
Permalink

Facebookが提供する開発者アプリ「Test Users」がバージョンアップされ、テストユーザー作成時にユーザー名の指定が可能になりました。

これにあわせて、当ブログで公開している、Facebookのテストユーザーが簡単に作れる「テストユーザー作成ツール」もバージョンアップしました。詳細は4項をご覧ください。

1.「Test Users」とは

Facebook上にダミーのユーザーを作成し、色々な動作確認が行えます。詳細は以下の記事をご覧ください。

Facebookテストユーザー作成ツール

2.ユーザー名について

これまでの「Test Users」では、テストユーザー作成時にユーザー名を指定できなかったため、次のようにFacebook側で任意の名前を割り当てていました。

これまでのテストユーザー(ユーザー名をシステムで割り振り)

今回のバージョンアップで、次のように好きな名前を指定できるようになりました。

バージョンアップ後のテストユーザー(ユーザー名を指定可能)

これで「DonnaほにゃらげさんとKarenなんちゃらさんを友達にして」みたいなやりとりをしなくて済みそうです。

3.API

ユーザー生成時のAPIでユーザー名を指定するには次の青色部分を追加します。

https://graph.facebook.com/APP_ID/accounts/test-users?
  installed=true
  &name=FULL_NAME
  &permissions=read_stream
  &method=post
  &access_token=APP_ACCESS_TOKEN

4.テストユーザー生成ツールバージョンアップ

テストユーザー生成ツールもユーザー名の指定ができるようにバージョンアップしました。

「FULL_NAME」に好きな名前を入力してください(全角入力はエラーになります)。

なお、同姓同名のユーザーを大量生産させないよう、このフィールドはユーザー数(Number of Test User)が「1」のときだけ表示するようにしています。

Comments [0] | Trackbacks [0]

Facebookページのファンを増やす方法

July 11,2011 1:55 AM
Category:[Facebook]
Tag:[]
Permalink

Facebookページのファンを増やす方法です。

先日の「Facebook Power Session!」受講の経験を活かして、自分のFacebookページ「小粋空間」も少し改善してみました。

今回行ったのは以下の2項目です。結構効果あるようです。

1.ブログにLike Boxを設置する

当ブログの各記事のフッタに「Like Box」を設置しました。「Like Box」はFacebookのソーシャルプラグインで、Facebook以外のウェブサイト等でFacebookページの存在を知らせることができます。

Like Boxを設置

ここでは表示してませんが、Like BoxにはFacebookページのウォール投稿を表示することもできます。

2.自動投稿アプリを使わない

これまで「RSS Graffiti」を使ってブログのフィードをFacebookページに流してましたが、ブログ(MT)のプラグインを使ってFacebookページのウォールに投稿するよう変更し、さらに一言添えるようにしました。厳密には「半自動投稿」です。

改善前
改善前

改善後
改善後

改善前は、郵便にたとえれば味気ないダイレクトメールのような感じだったのが、一言添えるだけで温かみのある投稿になりました(多分)。これで記事に関連する画像を入れられればよりよくなるのではないかと思います。そもそもブログ記事以外の手動投稿をほとんどしていないのが問題ですがそれはおいといて。

ファンを増やす効果は1項の方が大きいかもしれません。

3.効果

7月3日~4日に上記の2項目を実施したところ、Facebookページのファンが増える割合が以前よりやや高くなりました。Facebookのインサイトでは、改善後から新規の「いいね!」率が増加しているのが分かります(このグラフがそれを示していないものだったらすいません)。

インサイト

それはともかく、改善を行ってから1週間ほどで30人ほど増えて、現在187名です。皆さんの「いいね!」をお待ちしています。

誤解を与えないように補足しておくと、他にもOGPの設定などが必要で、上記の2項目で単純に効果があるかどうかは分かりません。詳細は「Facebookページプロフェッショナルガイド」をご覧ください(笑)。

Facebookページ プロフェッショナルガイド
蒲生トシヒロ 竹村詠美 原裕 大元隆志 井出一誠 マクラケン直子 ホシナカズキ 藤本壱 荒木勇次郎 関根元和
毎日コミュニケーションズ
売り上げランキング: 1492
Comments [0] | Trackbacks [0]

「Facebookページプロフェッショナルガイド」発売開始

July 10,2011 12:55 AM
Category:[書籍]
Tag:[, , ]
Permalink

執筆に参加させて頂いている、「Facebookページプロフェッショナルガイド」が発売になりました。

Facebookページ プロフェッショナルガイド
蒲生トシヒロ 竹村詠美 原裕 大元隆志 井出一誠 マクラケン直子 ホシナカズキ 藤本壱 荒木勇次郎 関根元和
毎日コミュニケーションズ

本書は、マーケティング・テクノロジーの両面からFacebookページを解説し、さらにWebクリエイター8名によるサイトデザインの紹介もついた、Facebookページを活用するにあたって必要な情報が盛り込まれた、渾身の1冊です。

私はWordPressとMovable Typeを利用したFacebookページの管理方法について、23ページ執筆させていただきました。jQuery UI Tabsを利用したFacebookページのカスタマイズや、ブログの「いいね!」ランキングの表示方法など、ご活用頂ければ幸いです。

jQuery UI TabsとWordPressを組み合わせてタブで複数コンテンツを表示
jQuery Tabsを利用したFacebookページ

ブログ(WordPress・Movable Type)の「いいね!」ランキングを表示
ブログの「いいね!」ランキングの表示

※カスタマイズ内容のブログ等への無断転載はご遠慮ください

Amazonでは7/10現在すでに在庫切れです。すぐに欲しい方は以下のサイトからも購入できると思います。

以下目次です。

Chapter1 Facebookページとは
1 マーケティングの立場からみたFacebookページ
2 オピニオンリーダーの感じるFacebookページ
3 WordPressとFacebookのいい関係
4 アメリカ合衆国におけるFacebookページの使われた
5 WebとFacebookの相関関係
6 Faceookインテグレーションの日本事例
7 Facebookページを作ってガッカリしないために
Chapter2 Facebookページを作ろう
1 Facebookページの仕様を考えよう
2 Facebookページを作成しよう
3 Facebookページのカスタイマイズ
4 CMSを利用したFacebookページの作成
Chapter3 ソーシャルプラグインとFacebookアプリ
1 ソーシャルプラグインの利用方法
2 インサイト(Insights)を使ったアクセス解析
3 よく利用されるFacebookアプリ
4 Facebookアプリを作る
Chapter4 デザイナーによるフェイスブックページ
1 M-glam(エムグラム)
2 Coba-U(コバユー)
3 関西Web/IT系コミュニティが結集したイベント「Untitled!!!!!!!!」
4 合同会社かぷっと
5 コーディングの牧野工房
6 シンガーソングライター・千賀有花
7 おんがくのじかん(ライブ・バー)
8 Facebookで運営するレシピコンテスト
Comments [0] | Trackbacks [0]

Facebook開発者向けアプリケーション「Developer App」バージョンアップ

July 9,2011 2:55 AM
Category:[Facebook]
Tag:[]
Permalink

Facebook開発者向けアプリケーション「Developer App」がバージョンアップされました。

Developer App
Developer App

ちなみに、本ブログで紹介しているアプリケーションの管理ページは以下です。

マイアプリ
Developer App

今回のバージョンアップは、2009年から最初のメジャーバージョンアップのようです。以下、開発者ブログの内容を元に簡単に機能紹介しておきます。

A New Take on the Developer App

1.アプリケーションの検索

トップページ右上に「アプリケーションを検索」があります。

アプリケーションを検索

アプリケーション名を入力すればインクリメンタルサーチで簡単の目的のアプリケーションを探すことができます。

アプリケーションを検索

2.サイドバー

左サイドバーには最近アクセスしたアプリケーションの順番に表示されます。

サイドバー

3.アプリケーションページ

各アプリケーションのトップには、よくアクセスする情報が表示されます。

トップページ

トップページの右側にある「編集」をクリックすれば、各セクションの編集画面に移動します。

トップページ

「Web」「On Facebook」「Mobile」の編集画面上部には、入門者向けのガイドが表示されます。

編集画面

「About」→「Roles」画面ではアプリケーションの管理者・開発者・テストユーザーなどが簡単に追加できます。

ユーザー追加

Comments [0] | Trackbacks [0]

Movable Typeの投稿コメントのメールアドレスを半角に変換する「CommentEmailByteChangerプラグイン」

Movable Typeの投稿コメントのメールアドレスを半角に変換する「CommentEmailByteChangerプラグイン」を公開します。

1.機能

前提として、MTのコメント投稿機能で、認証なしのコメントを受けつけ、さらに名前とメールアドレスの入力を必須にしている状態にします(下)。

登録/認証画面

この状態でコメントのメールアドレスを全角文字で入力して投稿した場合、次のようなエラーになります。

全角入力して投稿した場合のエラー
エラー

メールアドレスを全角文字での入力(誤った入力)は次のような感じです。

メールアドレスを全角で入力

下は半角文字での入力(正しい入力)です。

メールアドレスを半角で入力

本プラグインを利用すれば、全角文字で入力したメールアドレスを半角文字に変換するので、冒頭のエラーが出なくなります。全角と半角が混在していても大丈夫です。

下は実際に全角で投稿したコメントの編集画面です。メールアドレスが半角で登録されているのが分かります。

コメント編集画面

本プラグインはMT5.0以上で動作します。

注:プラグインという位置づけですが、プラグインを実行させるために、MTのプログラムに1行書き加える必要があります。

2.価格

  • 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
  • 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)

無償でご利用の場合も、プラグインのご利用についてご支援・ご賛同くださる方からの寄付をお待ち申し上げます。

3.プラグインのダウンロード・インストール

下記のリンクをクリックして、プラグインアーカイブをダウンロードします。

CommentEmailByteChanger_0_01.zip

プラグインアーカイブを展開し、中にある CommentEmailByteChangerフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で、「CommentEmailByteChanger~」が表示されればインストール完了です。

プラグイン設定画面

4.プログラムの修正

lib/MT/App/Comments.pmを任意のエディタで開き、910行目付近に、青色で示す1行を追加します。ここではMT5.12現在のプログラムに手を加えていますが、他のバージョンでもこのあたりの処理は変わっていないと思います。ポイントは赤色で示した「_make_comment」で探して、その次の行に挿入することです。

変更前

…前略…
my ( $comment, $commenter ) = _make_comment( $app, $entry, $blog );
return $app->handle_error(
    $app->translate( "An error occurred: [_1]", $app->errstr() ) )
    unless $comment;
…後略…

変更後

…前略…
my ( $comment, $commenter ) = _make_comment( $app, $entry, $blog );
MT->run_callbacks( 'comment_pre_save', $app, $comment, $commenter );
return $app->handle_error(
    $app->translate( "An error occurred: [_1]", $app->errstr() ) )
    unless $comment;
…後略…
Comments [2] | Trackbacks [0]

Movable Typeで記事アイテムのリビジョン管理ができる「RevisableAssetプラグイン」

Movable Type 5で、ブログ記事・ウェブページに関連づけたアイテムをリビジョン対象にできる「RevisableAssetプラグイン」を公開します。

RevisableAssetプラグイン

1.機能

MTのデフォルト機能では、ブログ記事・ウェブページに追加した「ブログ記事アイテム」「ウェブページアイテム」はリビジョン対象に含まれません。

例えば、画像の追加・変更・削除を行っても、リビジョンは更新されません。

初回の投稿によりリビジョンを記録
リビジョン一覧

記事タイトルなどを変更するとリビジョンが更新
リビジョン一覧

アイテムの追加・変更・削除を行なって記事を更新してもリビジョンは更新されない
リビジョン一覧

タイトルや本文の変更と同時にアイテムの追加・変更・削除を行なえばリビジョンは更新されますが、関連アイテム情報はリビジョンデータに含まれないので、そのリビジョンデータに入れ替えた場合、関連アイテム情報は消滅してしまいます。

本プラグインを利用すれば、ブログ記事・ウェブページの関連アイテムをリビジョン対象に含めることができます。

2.価格

  • 個人無償版/有償版での非商用利用/Movable Type Open Source:無償
  • 有償版での商用利用:1050円/1サーバ(事前に動作確認してください)

無償でご利用の場合も、プラグインのご利用および質問に対する回答等について、ご支援・ご賛同くださる方からの寄付をお待ち申し上げます。

3.プラグインのダウンロード・インストール

下記のリンクをクリックして、プラグインアーカイブをダウンロードします。

RevisableAsset_0_01.zip

プラグインアーカイブを展開し、中にある RevisableAssetフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で、「RevisableAsset~」が表示されればインストール完了です。

プラグイン設定画面

4.ウェブページでプラグインの動作を有効にする方法

ウェブページで本プラグインの動作を有効にするには、lib/MT/Page.pmの以下の部分の「1」を「9」に変更してください。この変更を行なわないと関連アイテムがリビジョン管理の対象になりません。

変更前(5.1x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page',
    1, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page',
    1, undef, \&MT::Revisable::mt_presave_obj );
…後略…

変更後(5.1x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page',
    9, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page',
    9, undef, \&MT::Revisable::mt_presave_obj );
…後略…

5.0xでは次のようにソースコードの改行位置が若干異なりますが、修正内容は同じです。

変更前(5.0x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page', 1, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page', 1, undef, \&MT::Revisable::mt_presave_obj );
…後略…

変更前(5.0x)

…前略…
# Callbacks: clean list of changed columns to only
# include versioned columns
MT->add_callback( 'api_pre_save.' . 'page', 9, undef, \&MT::Revisable::mt_presave_obj );
MT->add_callback( 'cms_pre_save.' . 'page', 9, undef, \&MT::Revisable::mt_presave_obj );
…後略…
Comments [0] | Trackbacks [0]

jQueryによるフォームデータ取得方法のまとめ

July 6,2011 3:55 AM
Category:[jQuery]
Tag:[]
Permalink

jQueryによるフォームデータ取得方法のまとめです。

フォームデータの取得で分かりにくいのは、セレクトボックス・ラジオボタン・チェックボックスの3種類ではないかと思われます。本エントリーではこの3種類にターゲットを絞り、動作サンプルを用いて解説します。「$」は「jQuery」で記述しています。

ネットで検索したところ、まとまった記事がなかったので自作しました。なお、本エントリーに掲載している方法以外にも色々なやり方があると思いますので、一例として参照して頂ければ幸いです。

1.セレクトボックスの値を変更したときに取得

セレクトボックスの値を変更したときに取得するには、changeイベントとval()を組み合わせます。changeイベント内部ではthisが使えます。

サンプル

(X)HTML

<select id="foo" name="foo">
  <option value="aaa">aaa</option>
  <option value="bbb">bbb</option>
  <option value="ccc">ccc</option>
</select>

jQuery

<script>
jQuery(function() {
    jQuery('select#foo').change(function(){
        var data = jQuery(this).val();
        jQuery('#message').html('セレクトボックスの値は「' + data + '」です');
    });
});
</script>

2.フォーム送信時にセレクトボックスの値を取得

フォーム送信時にセレクトボックスの値を取得するには、submitイベントとval()を君合わせます。submitイベント内部では「this+'option:selected'」で指定できます。

サンプル

(X)HTML

<form id="bar" name="bar">
  <select id="foo" name="foo">
    <option value="a">a</option>
    <option value="b">b</option>
    <option value="c">c</option>
  </select>
  <input type="submit" value="submit" />
</form>

jQuery

<script>
jQuery(function() {
    jQuery('form#bar').submit(function(){
        var data = jQuery(this + 'option:selected').val();
        jQuery('#message').html('セレクトボックスの値は「' + data + '」です');
    });
});
</script>

ただし1フォーム内に複数のセレクトボックスがある場合、このコードの書き方ではthisが使えないので、次のようにselect要素のid属性値などを直接指定してください。

…前略…
var data1_1 = jQuery('#foo1 option:selected').val();
var data1_2 = jQuery('#foo2 option:selected').val();
…後略…

3.ラジオボタンを選択したときに実行

ラジオボタンの値を変更したときに取得するには、セレクトボックス同様、changeイベントとval()を組み合わせます。changeイベント内部ではthisが使えます。

サンプル

(X)HTML

<input type="radio" name="number" value="1" />1
<input type="radio" name="number" value="2" />2
<input type="radio" name="number" value="3" />3

jQuery

<script>
jQuery(function() {
    jQuery('input[name="number"]').change(function(){
        var data = jQuery(this).val();
        jQuery('#message').html('ラジオボタンの値は「' + data + '」です');
    });
});
</script>

4.フォーム送信時にラジオボタンの値をチェック

フォーム送信時にセレクトボックスの値を取得するには、submitイベントとval()を君合わせます。submitイベント内部では「this+':checked'」で指定できます。

サンプル

(X)HTML

<form id="bar" name="bar">
  <input type="radio" name="number" value="1" />1
  <input type="radio" name="number" value="2" />2
  <input type="radio" name="number" value="3" />3
  <input type="submit" value="submit" />
</form>

jQuery

<script>
jQuery(function() {
    jQuery('form#bar').submit(function(){
        var data = jQuery(this + ':checked').val();
        jQuery('#message').html('ラジオボタンの値は「' + data + '」です');
    });
});
</script>

ただし1フォーム内に複数のセレクトボックスがある場合、このコードの書き方ではthisが使えないので、次のようにinput要素のname属性値などを直接指定してください。

…前略…
var data2_1 = jQuery('[name="number1"]:checked').val();
var data2_2 = jQuery('[name="number2"]:checked').val();
…後略…

5.チェックボックスをチェックしたときに実行

チェックボックスの値を変更したときに取得するには、changeイベントとattr()を組み合わせます。changeイベント内部ではthisが使えます。

サンプル

(X)HTML

<input type="checkbox" name="confirm" value="1" />confirm

jQuery

<script>
jQuery(function() {
    jQuery('input[name="confirm"]').change(function(){
        var data = jQuery(this).attr('checked');
        jQuery('#message').html('チェックボックスの値は「' + data + '」です');
    });
});
</script>

6.フォーム送信時にチェックボックスの状態をチェック

フォーム送信時にチェックボックスの値を取得するには、submitイベントとattr()を君合わせます。

サンプル

(X)HTML

<form id="bar" name="bar">
  <input type="checkbox" name="confirm" value="1" />confirm
  <input type="submit" value="submit" />
</form>

jQuery

<script>
jQuery(function() {
    jQuery('form#bar').submit(function(){
        var data = jQuery('input[name="confirm"]').attr('checked');
        jQuery('#message').html('チェックボックスの値は「' + data + '」です');
    });
});
</script>

7.1項~6項のすべてを含んだサンプル

サンプル
Comments [0] | Trackbacks [0]

CurrentStyleプラグイン

July 5,2011 12:55 AM
Category:[自作プラグイン]
Tag:[, , ]
Permalink

Movable Typeに適用しているスタイルとレイアウトを表示する「CurrentStyleプラグイン」を公開します。

このプラグインを利用すれば、適用中のスタイル名(赤枠部分)を取得することができます。

スタイル選択画面

1.機能

本プラグインでは次の拡張テンプレートタグを提供します。

  • MTCurrentStyle:適用中のスタイルを出力
  • MTCurrentLayout:適用中のレイアウトを出力

なお、データベースに保存しているデータをほとんど整形せずに出力しているので、スタイル選択画面通りの表記にはなりません。冒頭のスクリーンショットの「Cityscape SF」は「cityscape-sf」となります。

このプラグインはMT5以降で利用可能です。

2.プラグインのダウンロード・インストール

下記のリンクをクリックして、プラグインアーカイブをダウンロードします。

CurrentStyle_0_01.zip

プラグインアーカイブを展開し、中にある CurrentStyleフォルダごと、Movable Type のアプリケーションディレクトリの plugins ディレクトリにアップロードします。

システム管理画面のプラグイン設定画面で、「CurrentStyle~」が表示されればインストール完了です。

プラグイン設定画面

3.テンプレートタグ

提供されているテンプレートタグを、例えば次のように設定します。

このブログのスタイルは「<$mt:CurrentStyle$>」です。<br />
このブログのレイアウトは「<$mt:CurrentLayout$>」です。

出力結果は次のようになります。

出力結果

Comments [0] | Trackbacks [1]

Facebook開発者向けツール「Graph API Explorer」徹底解説

July 4,2011 12:55 AM
Category:[Facebook]
Tag:[]
Permalink

先日、Facebookから開発者向けツールGraph API Explorerがローンチされました。

Graph API Explorer
Graph API Explorer

本エントリーではGraph API Explorerの使い方を、ウォールにメッセージを投稿する方法を中心に解説します。

1.Graph APIとは

Graph APIはFacebook上のデータにアクセスするためのAPIです。実際にはプログラム上でGraph APIを起動するのですが、Graph API Explorerを使えばプログラムを作成する前にGraph APIの動作確認を行うことができます。

Graph APIの詳細は以下の公式サイトを参照してください。

Graph API

2~5項でウォールにメッセージを投稿する手順を説明しますので、Graph API Explorerにアクセスした状態にしてください。

2.アクセストークンの取得とパーミッションの設定

ウォールの投稿にはアクセストークンが必要なので、右側にある「Get Access Token」をクリック。

Get Access Token

パーミッションの選択ダイアログが表示されます。

パーミッションの選択ダイアログ

「Extended Permissions」をクリックして、ウォールの投稿に必要なパーミッション「publish_stream」をチェックし、「Get Access Token」をクリック。

パーミッションのチェック

アプリの許可ウィンドウが開くので、「許可する」をクリックします。なお、選択したパーミッションに対応する動作がウィンドウの左側(ここでは「ウォールへの投稿」)に表示されるので、動作に対応するパーミッションが不明な場合、ここで確認することもできます。

アプリの許可ウィンドウ

これでアクセストークンが取得できました。

アクセストークン取得

3.URLとPOSTデータの設定

ウォールの投稿はPOSTメソッドを利用するので、「POST」を選択します。

メソッドの選択

URLの末尾を「me/feed」に変更し、ウォールの投稿であることを指定します。

URLの設定

「Add a field」をクリック。これはPOSTデータに相当します。

Add a field

「key」に「message」、「value」に適当なメッセージを入力します。ここではmessageのみ指定していますが、「Add a field」をクリックしてさらにパラメータを増やすことも可能です。

POSTデータの設定

4.APIの実行

右側にある「Submit」をクリック。

Submit

下のテキストエリアにレスポンスが表示されます。JSON形式で「id: "xxxxx..."」が表示されればウォールの投稿は成功です。

レスポンスが表示

自分のウォールにアクセスすると投稿されてました。ちょっと感動です(笑)。

自分のウォール

5.パーミッションのクリア

アクセストークン取得後、再度「Get Access Token」をクリックしてパーミッションを確認したところ、自動的に次のようにチェックされていました。

パーミッションのクリア

ウォール投稿の場合、投稿を削除するときに「Graph API Explorerも削除」をチェックして削除すれば、さきほどのパーミッションの設定などがクリアされるようです(多分)。

投稿を削除

他の方法でパーミッションをクリアする方法はみつけられていません。「Get Access Token」の左側にある×印をクリックしてもテキストフィールドがクリアされるだけです。

投稿を削除

6.Connections

右側にある「Connections」のリンクをクリックすれば、関連するオブジェクトのリストを取得できます。アクセストークンを取得した状態でのクリックを推奨します。

Connections

例えば「feed」をクリックすれば、投稿一覧のレスポンスデータ(JSONオブジェクト)を取得できます。

レスポンスデータ

レスポンスデータの青色部分はリンクになっています。

レスポンスデータ

クリックすれば、そのオブジェクトのデータのみを表示します。

オブジェクトのデータのみを表示

元に戻るには「Back to Parent」をクリックします。

Back to Parent

7.Fields

「Fields」にはレスポンスデータの説明が表示されるようですが、初期画面でしか表示されません(操作ミスだったらすいません)。

Fields

以上です。「Graph APIがよく分からない」という人も、Graph API Explorerで少しとっつきやすくなるのではないでしょうか(ならないか)。

Comments [0] | Trackbacks [0]

「Facebookページ Power Session!」に参加しました

July 3,2011 1:55 AM
Category:[Facebook]
Tag:[, ]
Permalink

書籍「Facebookページ プロフェッショナルガイド」刊行記念の「Facebookページ Power Session!」に参加してきました。書籍も無事に完成して参加者全員に配布されました(書店での発売は7月9日)。

Facebookページ プロフェッショナルガイド
蒲生トシヒロ 竹村詠美 原裕 大元隆志 井出一誠 マクラケン直子 ホシナカズキ 藤本壱 荒木勇次郎 関根元和
毎日コミュニケーションズ

セミナーはマーケティングの話を中心に、講師として書籍前半の執筆陣が登壇されました。以下、セミナーの中で気になった(というか覚えている)部分を箇条書きでピックアップしておきます。

オープニング(蒲生 トシヒロさん)

  • Facebook F8カンファレンスにエッジランクに関する仕組みの説明がある
  • 「Facebookページ プロフェッショナルガイド」はFacebook開発者ドキュメントに忠実な技術書籍
  • Facebookは、マーケティングとテクノロジーの両方のスキルが揃ってはじめて活用できる

キーノート・スピーチ「ソーシャルシフト」(斉藤 徹さん)

  • 企業と顧客の絆が深まることによるLoyalty Loopが発生
  • eコマースの購買行動はAttention/Interest→Search→Action。ソーシャルコマースの購買行動では、Attention/Interest→Search→Action→Share(Facebook/Twitter)で次のAttention/Interestにつながる
  • 企業のソーシャルメディア運用には人件費をかける。開始してからの運用が大事
  • ソーシャルメディアの効果測定指標で一番向いていると言われているのはNPS(Net Promoter Score)。推奨者率(9or10) - 批判者率(0-6)がスコアとなる

結果を出すWebサイト-Facebookの双方向利用(井出 一誠さん)

  • モデルには「ファン化→集客」と「拡散→集客」の2つがある
  • ファンの投稿に反応する(レス・いいね!)ことが大事
  • エッジランクの構成要素で成果が出やすいのは「weight(重み)」
  • ウォール投稿にもノウハウがある(短い文章での投稿など)
  • サイトにOGPを設定すれば「いいね!」が友達のニュースフィードにも反映される
  • 投稿はプラグインを利用するよりもネイティブがいい

Facebookページの設計からデザイン、実装まで(ホシナ カズキさん)

  • Facebookページの仕様を決めるには、Don't Feel. Think!(感じるな、考えろ)
  • トラブルが発生しないようにするよりも、トラブルを乗り切ることが重要
  • 最低6つの仕様を決める(カテゴリー・ロゴ画像・タイトル・URLなど)
  • デザインがFacebookにひっぱられないようにする3つのポイント(キーヴィジュアル・キーカラー・キータイプフェース)
  • IFrameページはHTML+CSS+jQuery、CMS、サードパーティーアプリなど、諸条件から最適なものを選択

マーケティングからみたFacebookページ(竹村 詠美さん)

  • 2010年1月、アメリカでFacebookの滞在時間がGoogle/Yahoo/Amazon/Wikipediaなどのサイトの滞在時間を上回った(月間ベース)
  • リアルタイムのコミュニケーションプラットフォームであることがマーケティングとして重要なポイント
  • 人の心に刺さるコンテンツによってエンゲージメントが深まる
  • FacebookでのアクセスがGoogleを上回っているケースもある
  • Facebookはデジタルマーケティングの中で情報のうねりを大きくするしかけのひとつ

国内企業のFacebookインテグレーション事例(原 裕さん)

  • Facebookページだけではだめ。運用が重要
  • エンゲージメントがすべて
  • Facebookインテグレーション(Facebookの豊富な機能を活用し、顧客とのエンゲージメントを高める)
  • Facebookは企業にとっていいものが集約されているツール
  • LikeboxでFacebookページのファンになる人が多い
  • マスメディアと同じことはやらない方がいい

私はテクノロジー中心にFacebookやFacebookページに携わっていたのですが、セミナーを受けてマーケティングの重要性を強く感じました。今日の講演内容を参考に、運営中のFacebookページとサイトについても少し見直そうと思います(企業ではありませんが)。

終了後の懇親会では、初めてお会いする執筆者の方も多く、名刺交換&歓談させていただきました。ありがとうございました。遠方や都合で参加されなかった方も含め、また集まる機会があることを願っています。

ということで、執筆者の皆様、毎日コミュニケーションズの皆様、大変お疲れ様でした!

Comments [0] | Trackbacks [0]

Movable Typeオブジェクトのcache_propertyについて

July 2,2011 2:55 AM
Category:[プログラム]
Tag:[, ]
Permalink

Movable Typeオブジェクトのcache_propertyメソッドについて紹介します。

1.概要

cache_propertyはMT::Objectに定義されているメソッドで、実行結果やデータのキャッシュを行いたい場合に利用します。キャッシュは1回のリクエスト内でのみ有効です。用途としては次の2パターンがあるようです。

  1. データベースへのアクセスを減らしたい
  2. データをリクエスト内で持ちまわりたい

2.cache_propertyへの設定

1つめの利用方法では次のように設定します。1つめのパラメータがキー、2つめのパラメータにはコードリファレンスを設定します。実行結果がキャッシュされていればキャッシュを返却し、そうでない場合はコードを実行しないという機能をもっています。

$obj->cache_property( $key, $code );

MT::Comment::parentでは次のように使われています。

sub parent {
    my $comment = shift;
    $comment->cache_property(
        'parent',
        sub {
            if ( $comment->parent_id ) {
                return MT::Comment->load( $comment->parent_id );
            }
        }
    );
}

2つめの利用方法では次のように設定します。例はMT::CMS::Entry::saveで、カテゴリデータを$objに保存する場合です。

$obj->cache_property( 'category', undef, $cat );

3.cache_propertyからの取得

取得は、いずれの場合もキーを設定します。

$obj->cache_property( $key );

前述のカテゴリデータの取得は次のように行います。

my $cat = $obj->cache_property( 'category' );

4.キャッシュのクリア

キャッシュをすべてクリアしたい場合は、clear_cacheを実行します。

$obj->clear_cache();

5.注意事項

コードを実行するパターンでは試していませんが、データの保存時にcache_propertyが使えるのは、プライマリキーが存在する場合のみのようです。言い換えると、データベース保存前の$objには一意のIDが付与されていないので、その状態でcache_propertyを実行するとエラーになるようです。

以上です。こういう記事を書いたときは何かの伏線と思われることが多いのですが、そのとおりです(笑)。

Comments [0] | Trackbacks [0]

「Movable Type 5.1 プロの現場の仕事術」発売開始

July 1,2011 12:55 AM
Category:[書籍]
Tag:[, ]
Permalink

執筆に参加させて頂いている、「Movable Type 5.1 プロの現場の仕事術(毎日コミュニケーションズ)」が発売になりました。

Movable Type 5.1 プロの現場の仕事術
蒲生 トシヒロ 藤本 壱 西畑 一馬 柳 泰久 伊藤 のりゆき 金子 順 高橋 真弓 天野 卓 奥脇 知宏 荒木 勇次郎
毎日コミュニケーションズ

Movable Type 5.1の最新機能の解説やサイト制作に役立つ情報が盛りだくさんです。是非お買い求めください。

以下目次です。

PART1 基本編
1. いまのMovable Typeでできること
2. Movable Type 5.1の新機能
3. Movable Typeテンプレートのカスタマイズ基礎
Column_01 一冊の雑誌
PART2 実装編
1. HTML5とソーシャルメディアサービスで企業サイトのSEO&PV向上
2. CSS3+jQueryを利用したiPhoneサイト
Column_02 わたしたちにとってのMovable Type
PART3 プラグイン編
1. プラグインの基本
2. Movable TypeでEPUBを作成する
3. CSVデータでブログ記事・ウェブページを管理する
4. MTAppjQueryを使った管理画面のカスタマイズ
5. Movable Typeで強力なサイト内検索を提供しよう
6. ウェブサイト制作に役立つプラグイン
Column_03 まだまだ、MTでいいじゃん
PART4 サーバー環境構築編
1. Movable Typeに適したサーバー選び
2. Movable Type 5.1のインストール
3. サーバーでMovable Typeを解凍する
4. 旧バージョンからのアップグレード(旧環境に上書きする場合)
5. 旧バージョンからのアップグレード(旧環境を残す場合)
6. データベースと文字コードの変換
7. ローカル環境の作成(Windows編)
8. ローカル環境の作成(Mac OS X編)
9. Movable Typeを別のサーバーに移転する
10. Movable TypeをFastCGIで高速化する
11. phpMyAdminの基本
Column コンテンツの意味を問われる今後のCMS
Comments [0] | Trackbacks [0]
Now loading...
Introduction
List of "July 2011"
Recent Entries
Recent Comments
Recent Trackbacks
QRcode

現在停止中です
携帯電話からこのQRcodeを撮影することで携帯用URLを取得することができます

URI for cellular phones
ギターに入った猫
Styles
Font Size
Default
For defective color vision
Gray Scale
RGB Color
Search this site
loading ...
Categories
Monthly Archives
BlogPeople
BlogPeople
Syndicate this site
FeedBurner(RSS1.0/RSS2.0/Atom)
Counter
これまでのアクセス
Powered by
Movable Type 5.12