Ktai Style (携帯対応プラグイン)

初出日: 2007年9月19日 | 最終更新日: 2009年12月26日
投稿者: ゆりこ | パーマリンク

[ Ktai Style | 改版履歴 | サイト設定とテンプレートの改造 | ウェブログ管理機能 | よくある質問と答え | 手順集 | テーマ集]

概要

Ktai Style シングルポスト画面 (拡大)

Ktai Style は、あなたの WordPress ウェブログを日本の携帯電話対応 (5キャリアおよびスマートフォン対応) にするプラグインです。WordPress + Ktai Style だけで、携帯ブログが構築できます。

  • 携帯電話で閲覧すると軽量化したサイト表示を行います。(フロントページのみならず、アーカイブページ、個別エントリーの URI も対象)
  • ページ容量が大きい場合、端末に応じてページ分割を行います (5KB〜50KB ごと)。
  • 要所要所で、携帯電話に応じた絵文字を使用しています (数字・矢印・時計・顔など)。
  • コメントや投稿本文に絵文字が使えます (設定変更が必要)。携帯電話での閲覧時は各社に応じた絵文字に変換し、PC やスマートフォンでの閲覧時はテキストに置換して表示します。
  • 記事中の画像は、縮小してインライン表示するか (サーバー上もしくは Flickr の画像で 3G 端末等の場合)、画像へのリンクに変換します (それ以外の場合)。
  • i-mode, EZweb, Yahoo! ケータイ、ディズニー・モバイルの場合、外部サイトへのリンクは中継ページを出します。ウィルコム、イー・モバイル、その他の端末では直接リンクします。
  • 複数の携帯テーマをインストールして簡単に切り替えできます。携帯テーマは WordPress のテンプレート構造に準拠していて、容易に制作できます。
  • 簡単なウェブログ管理機能 (新規投稿・投稿編集・コメント管理など) があります。
  • コメント投稿時にログインできます。登録ユーザーのみコメント可能な設定でも携帯電話からコメント可能です。
  • 画像変換、PCサイト変換について、デフォルトでは外部サービスを極力利用していません。それらのサービスの信頼性・継続性に左右されることなく、安定して運用できます。

動作サンプルとしては、作者のサイト「Yuriko.Net」または「Yuriko.Net 旅行記」をご覧ください。ただし、開発中のバージョンを使っていたり、カスタマイズを行なっているため、標準機能と動作が異なります。その他の採用サイトも参考にしてみてください。

よくある質問と答え」を用意しました。当ドキュメントと合わせてご覧ください。

ダウンロード

安定版 (WordPress 2.6 以降用)
バージョン 1.81: ktai_style181.zip (536.4 KB)
旧安定版
(WordPress 2.5 用)バージョン 1.74: ktai_style174.zip (521.3 KB)
(WordPress 2.0〜2.3.3 用) バージョン 1.49: ktai_style149.tar.bz2 (258.4 KB)
開発版
いまのところありません

※旧バージョンからのアップグレード時は「↓以前のバージョンからの更新方法」を必ずお読みください。

以前のバージョンも入手できます。開発中バージョンは CVS リポジトリーにもあります。
(旧安定版および開発版のアーカイブは、bzip2 型式のものがあります。がんばって展開してください ;-))

スクリーンショット

Ktai Style 最新投稿画面 (ver 1.70)
最新投稿
Ktai Style 最新コメント画面 (ver1.70)
最近のコメント
Ktai Style 月別アーカイブ画面 (ver 1.70)
月別アーカイブ
Ktai Style 年別アーカイブ画面 (ver 1.70)
年別アーカイブ
Ktai Style 2008年のアーカイブ画面 (ver 1.70)
月別アーカイブ
Ktai Style カテゴリー一覧画面 (ver 1.70)
カテゴリー一覧
Ktai Style タグクラウド画面 (ver 1.70)
タグクラウド
Ktai Style コメント返信画面 (エラーあり; ver 1.70)
コメント返信画面 (エラーをインライン表示)
Ktai Style ログイン画面 (WordPress 2.7用)
携帯ログイン画面
Ktai Style ダッシュボード画面 (ver1.70)
ダッシュボード
Ktai Style 新規投稿画面 (ver1.60)
投稿作成
Ktai Style カテゴリー選択画面 (ver1.60)
投稿時のカテゴリー選択
Ktai Style 投稿一覧画面 (ver1.70)
投稿一覧
Ktai Style 投稿編集画面 (ver1.60)
投稿編集 (au での警告例)
Ktai Style ページ一覧画面 (ver1.70)
ページ一覧
Ktai Style ページ作成画面 (ver1.60)
ページ作成
Ktai Style コメント一覧画面 (ver1.70)
コメント管理
Ktai Style コメント編集画面 (ver1.60)
コメント編集
Ktai Style メール通知からのコメント削除画面 (ver1.60)
メール通知からのコメント削除
Ktai Style コメントスパム一覧画面 (ver1.60)
コメント一覧画面 (スパム)
Ktai Style カテゴリー選択画面 (ver1.60)
カテゴリー設定
Ktai Style メール投稿設定 (ver1.60)
メール投稿設定
Ktai Style 携帯テーマ設定画面 <ver1.60)
携帯テーマ設定

→テーマ別のスクリーンショットは、テーマ集を参照してください。

動作環境

  • WordPress 2.5 以降。2.9 にも対応しています (管理機能で一部制限あり)。WordPress 2.0〜2.3.3 は Ktai Style 1.49 を、WordPress 2.0〜2.3.3 では Ktai Style 1.49をご利用ください。
  • PHP 5.0 以降。PHP 4 では動きません!!
    なお、動作確認は PHP 5.2.x, PHP 5.3 で行なっていますので、5.0.x, 5.1.x では動かないかもしません。残念ながら PHP 4 への対応予定はありません (サーバー屋さんに PHP5 へのアップグレードを依頼してください)。
  • 対応している携帯電話サービスは、以下の通りです。
    • i-mode (NTT ドコモの mova, FOMA)
    • EZweb (KDDI, 沖縄セルラー)
    • Yahoo!ケータイ (ソフトバンクの PDC, 3G)
    • ディズニー・モバイル
    • ウィルコムのコンテンツサービス (ウィルコムの AIR-EDGE PHONE, SIM STYLE)
    • イー・モバイルの EMnet (モバイルブラウザモードのみ)
    • iPhone, iPod touch (デフォルトでは Ktai Style が適用されません。設定変更が必要)
    • Windows Mobile スマートフォン
      - W-ZERO3 シリーズ、ドコモ htcZ、ソフトバンク X シリーズ、EM・ONE など
    • Palm OS ハンドヘルド
    • シャープ Zaurus シリーズ
    • PlayStation Portable (PSP), Sony mylo
    • Nintendo DS (NDS)
    • mixi モバイルからの外部ブログ接続 (mixi 日記のかわりに WordPress ウェブログを設定したとき、PC 向け表示ではなく Ktai Style による表示が mixi によって変換されます)
  • 各社スマートフォン、PSP, NDS などの場合は、画面最下部に「PC 表示にする」リンクが出て、PC で見たときの表示に切り替え可能です。
  • フルブラウザ・PC サイトビューアー・PC サイトブラウザ・EMnet の「オープンブラウザ」・Windows Mobile 向け Opera の「デスクトップとして認識する」設定などは、PC 向けと認識し、携帯電話向け出力になりません。

設置方法

  1. プラグインをダウンロードして展開し、ktai_style フォルダーごとサーバーのプラグインディレクトリー (wp-content/plugins/) に転送します。
    ※ただし、README.ja.html 等の拡張子が html, txt のファイルと lang フォルダー内の ktai_style-ja.po (拡張子が po のファイル) は転送しなくて構いません。
    ** 重要 **
    ウェブログ管理機能を使わない場合は admin フォルダを転送しないでください。
  2. WordPress の管理パネルより Ktai Style プラグインを有効にします。
  3. 好みに応じて、サイト管理画面の各種設定→携帯表示でオプションを変更します。たいていはデフォルトのままで構いません。
  4. もし、携帯サイトが所々英語になっている場合、言語リソースが読まれていません。wp-config.php で WPLANG の設定を見直してください。WordPress 2.3 以降では通常 ‘ja’ とします。
  5. 本プラグインの更新を知らせるために、別途「JSeries Notifier」をインストールされることをおすすめします。(Ktai Style 1.4x 系統をご利用の場合でも、Ktai Style 1.70 以降の更新が通知されます。ご了承ください。1.4x 系統の更新は頻度が少なくなる予定ですが、1.7x 系統が更新されたときは 1.4x 系統の更新がないかを確認して頂ければ幸いです)

wp-content もしくは wp-content/plugins ディレクトリーを移設する場合

WordPress 2.6 以降で可能になった、wp-content ディレクトリーや wp-content/plugins ディレクトリーを標準の位置以外に移設する場合は、以下の手順で行なってください。

  1. プラグインのインストール時、ktai_style ディレクトリーにウェブサーバーから書き込み可能な権限を与えておきます。つまり、パーミッションを 757 や 777 にしておきます。
  2. プラグインを有効化します。このとき、ktai_style ディレクトリー直下に wp-load-conf.php ファイルが自動的に作られれば、設定 OK です。
  3. 作られない場合は、手動で ktai_style/wp-load.php を編集してください。
    20行目にある $wp_root 変数を変更して、WordPress インストールディレクトリーへの絶対パスを示すようにしてください。
    例: WordPress ディレクトリーが /home/foo/public_html/wp-core/ で、wp-content ディレクトリーが /home/foo/public_html/wp-content/ の場合
    $wp_root = dirname(dirname(dirname(dirname(__FILE__)))) . '/wp-core/'; とします。

WP Suer Cache と併用する場合

gDonncha 氏による WP Super Cache を併用した場合、そのままではさまざまな不具合が発生します (携帯電話に PC 向けのキャッシュされた内容を出力する/携帯電話出力が文字化けする etc)。このため、携帯電話閲覧時はキャッシュプラグインを動作させないようなアドオンを用意しています。以下のようにして組み込んでください。(WP-Cache の場合は以下の「WP-Cache と併用する場合」を参照のこと)

  1. ktai_style/patch-supercache-ktaistyle.php ファイルを WP Super Cache 配下の plugins ディレクトリーに配置します。通常は wp-content/plugins/wp-super-cache/plugins/ というパスです。
  2. Ktai Style および WP Super Cache を有効にします。
  3. WP Super Cache の設定画面で、一番下の方にある「Ktai Style Support」を Enabled にします。
  4. 引き続いて、WP Super Cache の設定画面で Mobile Device Support をオンにします。もしくは、Mobile Device Support をオフにして、Mod Rewrite Rules を設定します。以下の2行のコードが含まれているのを確認してから「Update Mod_Rewrite Rules」ボタンを押してください(iPhone, iPod にも Ktai Style を適用させる場合はRewirteCond が3行になります)。
    RewriteCond %{HTTP_USER_AGENT} !^(DoCoMo/|J-PHONE/|J-EMULATOR/|Vodafone/|MOT(EMULATOR)?-|SoftBank/|[VS]emulator/|KDDI-|UP.Browser|emobile/|Huawei/|Nokia|mixi-mobile-converter/)
    RewriteCond %{HTTP_USER_AGENT} !(DDIPOCKET;|WILLCOM;|Opera Mini|Opera Mobi|PalmOS|Windows CE;|PDA; SL-|PlayStation Portable;|SONY/COM|Nitro|Nintendo)
  5. ログアウト状態、かつ、クッキーを削除した状態の PC で閲覧して、リロードしたとき、XHTML ソースの末尾に 「Cached page generated by WP-Super-Cach」の表示があることを確認する WP Super Cache の動作確認)
  6. 携帯電話で同じページを閲覧して、携帯向け表示になっていることを確認します。PC 表示だったり文字化けしていたら失敗です (PC 向けブラウザーでユーザーエージェント偽装しての確認だとうまくいかないことがあります)。
  7. 再度 PC で同じページを見て、携帯向け表示になってないことを確認します (携帯ページがキャッシュされてないかの確認)。

WP-Cache と併用する場合

gallir 氏による WP-Cache プラグインを併用する場合は以下のようにして組み込んでください。(WP Super Cache の場合は上の「WP Super Cache と併用する場合」を参照のこと)

  1. キャッシュプラグインをこれからインストールする場合は、wp-cache-config-sample.php をコピーして wp-cache-config.php ファイルを作ります。
  2. wp-cache-config.php の19行目付近 (WP-Cache) すなわち $cache_rejected_user_agent を設定する直後に、以下のコードを追加します。
    if (file_exists(ABSPATH. 'wp-content/plugins/ktai_style/patch-wpcache.php')) {
            include ABSPATH. 'wp-content/plugins/ktai_style/patch-wpcache.php';
    }

    ※wp-content/ ディレクトリーもしくは plugins ディレクトリーを移動させている場合は、pache-wpcache.php へのパスを適切に変更してください。

  3. wp-cache-config.php ファイルを wp-content/ 直下に配置し、キャッシュプラグインを有効にします。
  4. ログアウト状態、かつ、クッキーを削除した状態の PC で閲覧して、リロードしたとき、XHTML ソースの末尾に 「Cached page served by WP-Cache」の表示があることを確認する (WP-Cache の動作確認)
  5. 携帯電話で同じページを閲覧して、携帯向け表示になっていることを確認します。PC 表示だったり文字化けしていたら失敗です (PC 向けブラウザーでユーザーエージェント偽装しての確認だとうまくいかないことがあります)。
  6. 再度 PC で同じページを見て、携帯向け表示になってないことを確認します (携帯ページがキャッシュされてないかの確認)。

以前のバージョンからの更新方法

  1. まず、プラグインを無効にしてください。
  2. サーバー上で自作テーマ/古いテーマの修正が必要です。
    • バージョン 1.81 で redir.php テンプレートの仕様が変わりました (Classic, Green, Monolith テーマをベースとした場合に存在するテンプレート)。グローバルなオブジェクト $Redir を廃止して、ks_is_redir(), ks_redir_has(), ks_redir_get(), ks_redir_same_host() テンプレートを導入しました。以下の対比表を参考に書き換えてください。不要になった global $Redir; も適宜削除してください。また、hedir.php テンプレート以外に header.php テンプレートにも isset($Redir) という記述があるため、これを ks_is_redir() に修正してください。
      $Redir->url ks_redir_get('url')
      $Redir->mobile_url ks_redir_get('mobile_url')
      $Redir->full_url ks_redir_get('full_url')
      $Redir->same_host ks_redir_same_host()
      isset($Redir) ks_is_redir()
      isset($Redir->full_url) ks_redir_has('full_url')
      empty($Redir->mobile_url) ! ks_redir_has('mobile_url')
    • バージョン 1.80 で iPhone/Androoid 向けに viewport 設定が入りました。header.php の4行目 (<meta http-equiv="Content-Type" の次の行) に以下のコードを入れてください。
      <?php if (is_ktai('type') == 'TouchPhone') { ?>
      <meta name="viewport" content="width=device-width,initial-scale=1.0;" />
      <?php } ?>
    • バージョン 1.74 で、comments.php が変更されました。$user_ID が使われている部分をすべて is_user_logged_in() に変更してください (4〜6か所あります)。
    • バージョン 1.73 で、header.php が変更されました。以下の3行を、title 要素を出力している個所の直前に入れてください。
      <?php if ( ks_is_comment_post() || isset($Redir) ) { ?>
      <meta name="robots" content="noindex,nofollow" />
      <?php } ?>
    • バージョン 1.70 で Compact テーマは Default テーマと統合されました。Default テーマにある home.php を削除すれば、Compact テーマとほぼ同等の動作になります (footer.php の挙動が少し異なります)。
    • バージョン 0.99〜1.47, 1.60 の comments.php は、WordPress 2.7 でのコメント投稿時に携帯端末情報が送信されなかったとき、PHP のエラーが表示されたり反応がなくなったりすることがあります。独自のテーマを利用している場合、comments.php の以下のコードを探して直してください (Default テーマでは91行付近です)。なお、テーマによって implode() で挟む文字列は異なります。
      echo implode("<br />", wp_specialchars(explode(”\n”, $ks_commentdata[’message’]))); 

      echo implode("<br />", array_map(’wp_specialchars’, explode(”\n”, $ks_commentdata[’message’]))); 
    • バージョン 1.70 で header.php, redir.php テンプレートの仕様が一部変更になりました。ジャンプ先の URL が $full_url というグローバル変数ではなく $Redir というオブジェクトで渡されます。Classic, Green, Monolith テーマを参考に、使い方を調べてみてください。
    • バージョン 1.70 以前の場合、テーマのローカライズ文字列 (_e(), __() 関数を使っている部分) が変更されています。そのままでは英語表示になってしまうため、附属テーマを参考に修正してください。コメントの入れ子に対応したい場合も、附属テーマを参考に修正してみてください。よく分からなければ、附属テーマを複製して改造し直した方が早いかもしれません。
    • バージョン 1.46 以前において、themes/classic/functions.php にある ks_convert_kana() 関数を自作テーマにコピーしている場合、この関数を消去してください。ks_convert_kana() 関数は Ktai Style 本体に組み込まれました。
    • バージョン 1.36 以前を使っている場合、ktai_style-ja.po, ktai_style-ja.mo, ktai_style-ja_UTF.mo, ktai_style-ja_EUC.po, ktai_style-ja_EUC.mo, emobile.php, ezweb.php, i-mode.php, services.php, softbank.php, willcom.php を削除してください。これらは lang および operators フォルダーに移動されたため、ktai_style ディレクトリー直下にあるファイルは使われないためです。
    • バージョン 1.20 以前で、header.php で wp_head() を、footer.php で wp_footer() を有効にしている場合、それぞれ ks_wp_head(), ks_wp_footer() に変更すると、より携帯電話に適した動作になります。
    • バージョン 1.11 以前で自作テーマを使っている場合、絵文字テンプレートタグで alt 属性が抜けている箇所に空の alt 文字列を補完してください。
      <img localsrc="XXXX" alt="" />
      従来は alt 属性がない場合、スマートフォン等で閲覧したとき何も置換しませんでしたが、バージョン 1.20 からは既定の代替文字列に置換されてしまうためです。alt="" と書けば従来通り置換されません。
    • バージョン 1.01 以前で自作テーマを使っている場合、footer.php 等に <?php ks_switch_inline_images(); ?> を追加してください。さもないと、「画像を表示する/リンクにする」のメニューが表示されません。
    • バージョン 0.97〜0.99 で自作テーマを使っている場合、default テーマから style.css をコピーして自作テーマのディレクトリーに入れてください。できれば、記載内容を適宜修正してください (修正は必須ではありません)。style.css がない場合、携帯テーマとして認識されません。
    • バージョン 0.96 までのテンプレート (templates フォルダー以下のファイル) をそのまま利用している場合、サーバーの templates フォルダーを削除してください。
    • テンプレートを改造している場合は、サーバー上の templates ディレクトリーを適当な名前 (old など) に変更し、themes ディレクトリーの配下に移動してください。
  3. WP Super Cache を利用している場合、いったんキャッシュを OFF にして再度 ON にしてください。それから「View Mod_Rewrite Rules」ボタンを押して、4行ある HTTP_USER_AGENT が最新のもの (patches-pc.php を参照) に書き換わっていることを確認してください。
  4. サーバーにファイルを転送します。(バージョン 0.97 以降で) 自作テーマを利用している場合、サーバー上の themes ディレクトリーにある自作テーマを消さないよう注意してください。(WordPress 本体をアップグレードするとき wp-content の中身を消さないようにするのと同じ要領です)
  5. プラグインを有効にしてください。プラグインを一度無効にしてから有効にしないと、管理画面へのログインができません (ログインセッションを生成できない、というエラーになります)。
  6. 必要に応じて管理画面でテーマを選択します。(自作テンプレートを themes ディレクトリーに移動した場合など)
  7. 環境設定の確認をしてください。1.60 からは、「去年以前の日時」「今年の日時」に時刻フォーマットも含める必要があります。したがって、そのままでは、「去年以前の日時」「今年の日時」を表示するとき、時刻が出なくなります。従来と同じ出力にしたいならば、それぞれ「Y-m-d H:i」ないし「n/j H:i」という指定に直してください。

プラグインの撤去

プラグインの使用を中止して、撤去するには以下の手順で行なってください。

  1. 管理画面の「携帯表示」で、一番下にある「オプション値をデフォルトに戻す」をクリックします。
  2. プラグインを無効にします。これにより、セッション管理用テーブルが削除されます。
  3. FTP ツール等で、wp-content/plugins から ktai_style ディレクトリーを丸ごと削除します。wp-content/ktai-themes ディレクトリーがあれば、これも削除します。
  4. wp-content/uploads ディレクトリー配下などにある、携帯電話向けサムネール (*****.ktai.jpg などのファイル名の画像) は残ってしまいます。そのままでもウェブログの表示に影響はありませんが、気になる場合は、FTP ツールで削除するか、シェルログインして find コマンド等で削除してください。
    $ cd wp-content/uploads
    $ find . -name '*.ktai.jpg' -or -name '*.ktai.png' -or -name '*.ktai.gif' -exec rm {} \;

携帯サイトの調整

携帯サイトの見た目は、PC での管理画面による設定、およびテンプレートの改造により、お好みに調整できます。管理画面では以下の設定が可能です (デフォルトテーマ以外では無効の場合があります)。詳細は「サイト設定およびテンプレートの改造について」を参照してください。

  • 使用するテーマの切り替え
  • 3G, ウィルコム端末等で画像をインライン表示するかリンクに変換するかの選択
  • コメント欄や投稿本文に絵文字の入力を許可するか否かの選択
  • コメントとトラックバック・ピンバックを混在するか分離するかの選択
  • 中継ページを使わず直接リンクを張る外部サイト
  • 文字色 (日付、投稿者名、コメント種別、外部サイトのリンク文字)
  • 日付・時刻の書式

機能詳細

  • ウェブログ管理機能については「ウェブログ管理機能について」をご覧ください。
  • 文字コードは Shift_JIS に変換しています。古い端末 (PDC 端末等) でも表示できるため、絵文字表示を行うためとパケット節約のためです (UTF-8 に比べて2〜3割減)。
  • del 要素で囲まれた内容は削除されます。PC では通常取り消し線が付きますが、携帯端末では取り消し線に対応しておらず、通常表示と区別が付かなくなるためです。
  • 1ページに表示される記事数は、PC 向けサイトと同じ (各種設定→表示設定の「ブログページ」の設定値と同じ) になります。したがって、ページ番号付きの URL (http://blog.example.jp/page/3/ のような URL) でも、PC と携帯電話で同じ内容が見られます。この動作を維持するため、携帯電話だけ記事数を減らす機能を付ける予定はありません。
  • 記事中の画像は、縮小してインライン表示するか、画像へのリンクに変換します。縮小してインライン表示するのは、サーバー配下もしくは Flickr に登録した画像で、FOMA, EZweb WAP2.0 機, ソフトバンク 3G, イー・モバイル音声端末、ウィルコム, 「その他」端末で閲覧の場合です。それ以外の場合 (外部サイトの画像や古い世代の電話での閲覧時) は、リンクとなります。PDC 端末でサーバー配下の画像へのリンクになる場合、リンク先画像が利用している端末で表示できないと推測される場合、より小さい画像へのリンクに差し替えます。Flickr 以外の外部サイトの画像の場合、縮小画像を作成せず無条件にリンクとなります。
  • 画像をインライン表示している場合、画面下部のメニューで画像をリンクに変換するか (従来通りの表示)、インライン表示に戻したりできます。携帯電話向けのページ分割がされた場合、分割前のページ全体のとこかにインライ画像があれば、分割後のすべてのページで切り替えメニューが出ます。したがって、分割後のページで画像が存在しないのに切り替えメニューが出ることがあります。なお、古い端末の場合は画像をインライン表示できないため、切り替えメニューは出ません。
  • Ktai Style が作成する縮小画像は、オリジナル画像と同じディレクトリーに保存されます (以後の閲覧で再利用)。WordPress がそのディレクトリーに書き込み権限を持たない場合、画像縮小されずにリンクになります。縮小サイズは、長辺側が 96 ピクセルで決め打ちです。
  • 元画像が PNG (または GIF) 画像の場合、携帯電話用サムネールは PNG, GIF 両方を作成します。また、元画像と同じサイズの GIF (または PNG) 画像も作成されます。「PNG, GIF 自動切り替え機能」により、i-mode 端末では GIF 画像を表示/ソフトバンク PDC 端末では PNG 画像を表示するため、PNG, GIF 画像をシームレスに扱えます。なお、JPEG 画像が表示できない端末については考慮していません。
  • サムネールに対して元画像へのリンクを張っている場合、サムネールの後に元画像へのリンクを追加します (ファイルサイズも表示)。こちらも、画像サイズが大きい場合は、リンクにならず元画像のファイルサイズだけ表示します。
  • 画像にウェブサイトへのリンクを張っている場合、画像へのリンクの後ろに、ウェブサイトへのリンクを追加します。
  • シンボリックリンク等で、WordPress インストールディレクトリー配下でないディレクトリーを呼び出して画像を使っている場合も、できる限り同一サーバー上とみなします。例えば、http://example.jp/blog/ に WordPress をインストールしていて、http://example.jp/photos/ に画像を入れている場合でも、サムネールを作成したり、「元画像(xxKB)」のようなリンクになります (サーバーの設定やファイル構成によっては、同一サーバーと認識されない場合があります)。
  • プラグイン用画像はリンクにせず、alt 文字列をそのまま表示します。Ultimate Tag Warriorのアイコン、wp-tegaki の TrueType 画像などが対象です。
  • 携帯電話に画像を縮小させずそのまま見せたい場合は、img 要素に
    class="ktai"
    という属性を追加してください (詳細は「テンプレートで画像を使う」を参照)。
  • 携帯端末でコメントや投稿本文に絵文字を入力した場合、<img localsrc="999" /> というフォーマットに置換してデータベースに保存されます。絵文字番号は下記の通りになります。
    サービス 説明
    EZweb 1〜822 10進数で EZweb 絵文字番号にそのまま対応
    SoftBank se001〜se53e s を除いた部分は16進数4ケタで、ソフトバンク絵文字の UNICODE 値に対応。
    i-mode d001〜d276 d を除いた部分は10進数。1〜176 は基本絵文字、201〜276 は拡張絵文字 1〜76 に対応。
    WILLCOM d001〜d276 i-mode と同じ
    wf040〜wf15f w を除いた部分は16進数4ケタで、ウィルコム絵文字の Shift_JIS コードに対応
    EMnet d001〜d276 i-mode と同じ
    e253〜e278 e を除いた部分は10進数で、イー・モバイル絵文字 253〜278 に対応。

    Ktai Style で定義されていない文字コードの絵文字 (新しく追加された絵文字など) の場合、<img localsrc="ZZ" alt="[0xHHHH または ESC$XnnnSI]" /> というフォーマットになります。ZZ はキャリア識別文字 (ez: EZweb, d: i-mode, s: SoftBank, w:WILLCOM, e: EMnet) で、0xHHHH は 16進数の ShiftJIS コード、ESC$XnnnSI は ソフトバンクのウェブコード (X は 3バイト目で G,E,F,O,P,Q のいずれか、nnn は4バイト目を10進数にしたもの) です。

  • 外部サイトへのリンクは以下の通りに処理されます。
    ドコモ FOMA
    EZweb (WAP2.0)
    中継ページ経由リンクに変換。フルブラウザ/PC サイトビューアーでの閲覧リンクも併記。
    ソフトバンク
    ディズニー・モバイル
    中継ページ経由リンクに変換。手動でPCサイトブラウザに切り替えてください。
    ドコモ mova
    EZweb (HDML)
    中継ページ経由リンクに変換
    ウィルコム
    イー・モバイル
    それ以外
    直接リンク

    ただし、以下のブログサービスへのリンクは、中継ページを出さずに直接リンクします。リンクの前に PC アイコンや [PC向け] 表示も出ません。

  • ページ分割サイズは端末に応じて自動調整されます。分割値は以下の通りです。
    ドコモ mova 5000 バイト (約5KB)
    ドコモ FOMA 20000 バイト (約20KB)
    EZweb (HDML) 7500 バイト (約7.5KB)
    EZweb (WAP2.0) 20000 バイト (約20KB)
    ソフトバンク PDC 6000 バイト (約6KB)
    ソフトバンク 3G
    ディズニー・モバイル
    20000 バイト (約20KB)
    ウィルコム
    イー・モバイル
    20000 バイト (約20KB)
    その他 50000 バイト (約50KB)
  • 画像表示可能なサイズ (キャッシュサイズ) は、ユーザーエージェント文字列などより自動判別されます。3G 端末の場合 100KB〜128KB 程度、スマートフォンの場合は 512KB となります。

制限事項

管理機能の制限事項もお読みください。

  • シンボリックリンクを利用して ktai_style ディレクトリー、wp-content ディレクトリー等を移動している場合、正常に動作しないことがあります。
  • WordPress 2.7 以降で、「1 ページ当たり NN 個のコメントで複数ページに分割する」機能を使っている場合、コメント一覧ページでは、コメントとトラックバック・ピンバックは強制的に混在表示になり、分離表示はできません。これは、コメントのページ数がおかしくなるためです。
  • WordPress 2.5.x 以前では、固定ページに日本語のページスラッグを使っている場合、携帯電話からそのページにはアクセスできません。これは WordPress コアの不具合のためです。WordPress 2.6 以降にアップグレードすれば改善されます。
  • 携帯電話向けページ分割した際、「画像を表示する/リンクに変換」の切り替えを行うと、分割位置が変化するため、現在見ている内容が前後の分割ページに移動することがあります。
  • プラグインが提供する PNG, GIF 画像は、PNG, GIF 自動切り替え機能に対応するものの、PNG→GIF画像および GIF→PNG画像の自動生成には対応していません。あらかじめ PNG, GIF の両方の画像を生成しておいてください。
  • 携帯電話の絵文字は、i モード拡張絵文字、EZweb type-D、ソフトバンクの拡張絵文字を一部利用していますので、古い端末だと表示されない場合があります。
  • PC、スマートフォン向けの携帯絵文字は完全には収録していません。このため、PC 等で絵文字を含むコメントや投稿を見たときは、[ボウリング] や (#□#) などの代替文字に変換されることがあります。
  • ソフトバンク 3G は、機種によっては絵文字入力に対応していません。Shift_JIS 非対応端末等、UTF-8 で絵文字を送出してしまう端末が対象です。
  • 絵文字投稿した本文をビジュアルエディタで編集・保存すると、絵文字が失なわれてしまいます。これは、ビジュアルエディタが <img localsrc=”NNNN” /> フォーマットに対応していないためです。編集するときは、あらかじめコードエディタ (HTML エディタ) にしてから投稿を選んでください。ビジュアルエディタで投稿を開いてしまった場合、保存せずに前の画面に戻ってください。
  • フラグメント識別子 (#comment-99 のようなもの) を使って、ページ内リンクや他ページへのリンクをしている場合、リンク先の位置が携帯端末向けページ分割によって2ページ目以降に回された場合でも、その分割ページにはリンクできません。携帯電話で見ることを想定したコンテンツでは、ページサイズを少な目にして、フラグメント識別子は極力使わないことをおすすめします。
  • UTF-8 で保存されたデータベースを Shift_JIS に変換しているため、投稿本文で Shift_JIS に存在しない文字を使っている場合、携帯閲覧時に欠落したり文字化けする可能性があります (温泉マークやはしご高など)。
  • コメント投稿時にログインする場合、コメントフォーム右上にある「ログインしてコメントする」のリンクを使ってください。ページ下にある「ログイン」の場合、管理画面に入ってしまい、ウェブログ画面に移るとログイン状態が解除されてしまいます。また、ログイン直後にコメント投稿せず、他のリンク (「記事に戻る」やページ下部のメニューなど) を辿った場合も、ログイン状態が解除されてしまいます。「送信する」ボタン以外は使わないよう、ご注意ください。
  • パスワード保護された投稿でコメント投稿したとき、投稿後に記事またはコメントを見るには、再度パスワード入力が必要となります。技術的な限界により、改善は非常に困難です。ご了承ください。
  • XHTML Basic (携帯電話向け XHTML) では不要な要素・属性をできるだけ除去していますが、テーブルタグなど、一部端末で対応していない要素も出力してしまいます。
  • 携帯電話の絵文字は、i モード拡張絵文字、EZweb type-D、ソフトバンクの拡張絵文字を一部利用していますので、古い端末だと表示されない場合があります。
  • 携帯電話からの新規投稿やコメント投稿で「〜」(波ダッシュ) を含む文字を使った場合、Unicode コード U+301C の「〜」としてデータベースに保存します。Macintosh や Linux は通常この波ダッシュを使うため問題ありませんが、Windows では、全角チルダ U+FF5E「~」を多用しており、複数の波形文字が混ざってしまいます。これは仕様ですので、ご了承ください。気になる場合は、全角チルダを波ダッシュに矯正する拙作プラグイン「Force Wave Dash」をご利用ください。
  • キーワードタグに、全角チルダ U+FF5E「~」を含む文字列を使用していた場合 (Windows で波形の文字を使うとこの文字になります)、携帯管理画面で投稿編集すると、波ダッシュ U+301C「〜」として保存してします。このため、編集前とは別のタグになってしまいます。キーワードタグで全角チルダを使わないようにしてください。(Force Wave Dash はキーワードタグへの対応は完全ではなく、全角チルダを駆逐できません)
  • WordPress MU で、WPMU Plugin Control (プラグインを一括管理するプラグイン) を使って Ktai Style を有効・無効にしたときは、携帯ログイン時のセッション管理テーブルの作成・破棄ができません。これは、WPMU Plugin Control がプラグインの activate/deactivate フックを呼んでいないのが原因です。WPMU Plugin Control を使って Ktai Style の有効・無効は行なわないでください。

MobilePressNEO との相違点

  • 6種類のテンプレートが附属しており、好きなものを選んで使えます。
  • 電話キャリアを自動判別して、要所要所で絵文字を使っています。コメントや投稿本文への絵文字入力が可能です。
  • 投稿本文に小さめの画像をインライン表示できます。
  • ページ容量が大きい場合、5KB〜50KB ごとにページ分割します。
  • 最新のコメント一覧やタグクラウドが見られます。
  • コメント投稿にユーザー登録必須としている場合でも、コメントできます (ただし、あらかじめ PC でユーザー登録が必要)。
  • ウェブログ管理機能があります。
  • 全角カナ→半角への変換は行いません (テーマによっては変換します)。
  • クッキーに対応していない携帯電話でも、パスワード保護された投稿の閲覧が可能です。
  • PHP4 への対応はしていません。

Mobile Eye+ との相違点

  • 電話キャリアを自動判別して、要所要所で絵文字を使っています。コメントや投稿本文への絵文字入力が可能です。
  • 投稿本文に小さめの画像をインライン表示できます。ただし、外部サイトの画像は原則としてリンクになります。
  • ページ容量が大きい場合、5KB〜50KB ごとにページ分割します。
  • 最新のコメント一覧やタグクラウドが見られます。
  • コメント投稿にユーザー登録必須としている場合でも、コメントできます (ただし、あらかじめ PC でユーザー登録が必要)。
  • ウェブログ管理機能があります。
  • 全角カナ→半角への変換は行いません (テーマによっては変換します)。
  • 原則として PCサイト/画像の変換サービスは利用しません。ただし、Classic テーマのみ、通勤ブラウザと Google サイト変換を使用しています。「あやしい広告」が出ないように配慮しています。
  • デフォルトではコメントとトラックバックを混在して表示します (WordPress の挙動に準拠)。
  • パスワード保護の解除は、端末によらずフォームへの入力で可能です (Basic 認証は使いません)。そのかわり、投稿やコメントの閲覧の度にパスワード入力が必要となります。
  • PHP4 への対応はしていません。

今後の予定

  • 端末識別情報や cookie を使って、自動ログイン/簡単ログインができるようにする。
  • ログイン状態でウェブログ閲覧できるようにする。
  • 投稿作成時にファイル添付を可能とする。
  • カテゴリーやタグの管理を可能とする。
  • Ktai Entry と連携して、投稿の編集をメール投稿で行えるようにしたり、メール投稿用のテンプレートを Ktai Style で作成できるようにする。
  • 投稿時に位置情報を追加できるようにする。
  • 携帯電話からユーザー登録可能とする。
  • 携帯テーマをスクリーンショットを見て選択できるようにする。
  • ビジュアルエディタで編集しても絵文字用 XHTML コードが壊れないようにする。

※「携帯サイトの URL を PC 向けと分離できる設定の追加」は実装をあきらめました。。要望があれば検討するかもしれません。

著作権について

Ktai Style のライセンスは GPL v2 とし、著作権は作者である IKEDA Yuriko が保有します。ただし、ソースコードのいくつかの部分は WordPress の本体コードを流用したものがあり、その部分は WordPress 開発者が著作者です。

pics/SA/ フォルダー以下の画像252枚は、シックスアパートが制作したもので、ライセンスは GPL を適用しています。同じ画像が以下の URL で入手できます。
http://start.typepad.jp/typecast/

改版履歴

別ページに分離しました。

作者のウェブログ記事