Post:2008年12月03日

mixiモバイルアクセス時に、ktai styleが動作するようにしてみた

最近、アクセスログに見慣れないユーザーエージェントが増えていた。

mixi-mobile-converter/1.0 (http://mixi.jp/)

mixiが外部検索用にロボットを動かしているのかな……と思っていたのだが、どうやら違うようで、これはmixiモバイルの外部リンク変換サービス時のユーザーエージェントのようだ。2008年9月から開始していたんですね……mixiあんまりやらないから知らなかったよ。

mixiモバイル、外部サイトを携帯電話向けに変換するサービス(BB Watch)

僕はmixiでは、このブログを表示するような設定にしているので、早速mixiモバイルから自分のサイトへとアクセスしてみた。

すると、携帯対応プラグイン「Ktai Style 1.45」での表示画面ではなく、パソコンから見た表示画面を携帯電話向けに変換されたページが出力された。画像縮小、リンクは取り除かれるなどの処理がされているようです。

そこで、mixiモバイルから表示した場合に、「Ktai Style」が動作するように設定してみた。やり方は、プラグインに付属しているマニュアルを見ればすぐに分かりますが、WordPressインストールフォルダ直下の、my-hacks.php に以下のコードを追加します。普通はファイル自体が存在しないはずなので、その場合はファイルを新規作成します。

<?php
function ks_detect_mixi($ktai, $ua) {
    if (preg_match('/^mixi-mobile-converter/', $ua)) {
        if ($ktai) {
            unset($ktai);
        }
        $ktai = new Ktai_Service_Other($ua);
    }
    return $ktai;
}
add_filter('detect_agent/ktai_style.php', 'ks_detect_mixi', 10, 2);
?>

これで、『レガシーな my-hacks.php ファイルを使用』に設定されていれば、mixiモバイルからWordPressにアクセス時に、「Ktai Style」が動作するようになります。

ちなみに、mixiモバイルからアクセスされる場合は、毎回 robots.txt をチェックしているようなので、拒否したい場合は、

User-agent: mixi-mobile-converter
Disallow: /

と、robots.txt に記述すればOKのようです。

2008-12-12 追記

Ktai Style バージョン 1.46』で、正式に対応していただいたので、バージョン1.46 移行は上記のようなことをする必要はありません。