PearBlog » Blog Archive » Ktai Styleでi-modeのXHTML
 
PearBlog 雑記です

Ktai Styleでi-modeのXHTML

 Votes | Average: 0 out of 5 Votes | Average: 0 out of 5 Votes | Average: 0 out of 5 Votes | Average: 0 out of 5 Votes | Average: 0 out of 5 (0)
Loading ... Loading ...

※下記はVer0.92でのことで現在の0.93Ver~で即時反映されています。

WordPressでケータイサイト構築にかかせない、Ktai Style。大変お世話になっております。

現在、WPJフォーラム(http://phpbb.xwd.jp/)の調子が悪く書き込みしようと思ってもNGなんで、あれやこれやと調べてみました。
で、何を調べていたかっていうと、「i-modeでXHTML書式でスタイルシートが反映されない。はて、さて?auはOKなんだけどもなぜ?」っていう問題。

まだ、ぐぐってもあまりないネタということで、だれかの為になるかもですのでメモっておきます。
「WordPressでKtai Styleプラグインを使って、ドコモi-modeのXHTMLでCSSを反映させる」
のをどうやるか。で、ここ半日ほど調べた結果のメモです。

結論から先に。
1)Content-Type: application/xhtml+xml のHTTPレスポンスヘッダーを出す
2)movaなど後方互換させるために、ユーザエージェントDoCoMo/2なら上記を吐くように。

ktai_style.phpの、150行目あたり(Verによる違いがあるので)

header (”Content-Type: text/html; charset=$iana_charset”);

があるあたりに、1,2の処理をすればOK。もっと綺麗な書き方があるのかもですが、僕は書きのようにとりあえず施しました。作者さんが、時期リリースでもっと洗練したコードをかいてきてくれるはず^^

$ua = $_SERVER[’HTTP_USER_AGENT’];
if (preg_match(’!^DoCoMo/2!’, $ua)) {
  header (”Content-Type: application/xhtml+xml; charset=$iana_charset”);
} else {
  header (”Content-Type: text/html; charset=$iana_charset”);
}

auケータイは、このあたりメタタグの情報(XHTML文書内)でもうまくブラウザが処理してくれるようですが、ドコモさんのブラウザは厳しいようです。
iモード対応XHTMLの考え方
このページの最後のほうに、1.3.5.  MIMEタイプっていう部分に明記してありますね。

※参考にさせていただいたページ
Re: XHTML1.1のMIMEタイプ(2)
XHTML1.1の MIME タイプ指定
LiveHTTPHeadersでHTTPヘッダ情報を確認する
モバイルサイトのCSS
iモードでXHTMLを扱う
MIMEタイプ・文字コードの指定
Apache モジュール mod_mime

FireFoxのヘッダみれるプラグイン LiveHTTPHeaders

以下、この問題とは関係ないけども、マイム関係のプラグイン。
WordPress mime-config
Mime Type Plugin

最後にひとこと。Ktai Style経由で出力すると、他プラグインのコードもUTF8→SJISやってくるのですごい。フォームからの反対の動きとか、どうなるのかまだよくみていないけども、どうなんでしょうね。
ケータイレジスト(WordPressユーザ登録)とか、コンタクトフォームとか、連携できるような感じだと一気に幅が広がりますね。あ、そうそう。runPHPなど、フックがKtaiStyleが最初に効く関係だと思うんですが、動作しません。こういう事情ってテンプレートで対応できないケースで、ちょっと実験してみたいときがあるんで、動いてくれるとさらに面白いですね。もっとハックしないとフックの関係など、まだあまりよくわからないので途中で頓挫しましたが、、、。Ktai Style、今後が楽しみなWordPressプラグインです。ぜひ、みなさんもお試しを!

  1. yuriko :

    Ktai Style 作者です。DoCoMo2 で application/xhtml+xml を吐くというのは、次期バージョンで取り込みたいと思います。
    runPHP の動作不具合については調査してみます。ob_start() と相性が悪いのかもしれません。

  2. yuriko :

    runPHP が動作しないのは、wp_head() を実行してないからでした。templates/header.php を改造して wp_head() を実行させてみてください (wp_head() はコメントとして埋め込みずみです)。

  3. Ishizaka :

    こんばんわ。書込みありがとうございます。
    runPHPの件、さっそく試しました。wp_head()埋め込んだら、OKでした。ありがとうございます。

    kses.phpのclass Ktai_HTML_Filterのフィルター見ていたんですが、input属性で、auの文字入力属性のformatはスルーしてもいいのかなと感じました。次期リリースでご検討ください。

    同梱のkses.phpのKtai_HTML_Filterはとても見やすくて助かりました。WP同梱のは、頭がクラクラしましたので^^

  4. Yuriko.Net :

    WordPress 携帯対応プラグイン Ktai Style…

    WordPress 向け携帯電話閲覧・管理プラグイン Ktai Style のバージョン 0.96 をリリースしました。主な改良点は以下の通りです。最新記事一覧やアーカ (more…)

  5. Yuriko.Net :

    WordPress 携帯対応プラグイン Ktai Style 0.98 リリース…

    WordPress 向け携帯電話閲覧・管理プラグイン Ktai Style のバージョン 0.98 をリリースしました。主な改良点は以下の通りです。WordPres 2.3 以降で、投稿の本文表示でのキーワードタグの表示お …

  6. Yuriko.Net :

    WordPress 携帯対応プラグイン Ktai Style 0.99 リリース…

    WordPress 向け携帯電話閲覧・管理プラグイン Ktai Style のバージョン 0.99 をリリースしました。主な改良点は以下の通りです。default, compact, redportal テーマでは、コメント投稿時に必須事項 ( ….

  7. Yuriko.Net :

    WordPress 携帯対応プラグイン Ktai Style 1.00 リリース…

    さきほど、WordPress 携帯対応プラグイン「Ktai Style」の正式版となるバージョン 1.00 をリリースいたしました。主な変更点は以下の通りです。ウェブログ URL の配下にある画像すべてに対し ….

  8. Yuriko.Net :

    WordPress 携帯対応プラグイン Ktai Style 1.10 リリース…

    さっそくですが、WordPress 携帯対応プラグイン「Ktai Style」の正式版となるバージョン 1.10 をリリースいたしました。主な変更点は以下の通りです。各社 3G, WILLCOM, その他端末では、小型サ ….

  9. Yuriko.Net :

    WordPress 携帯対応プラグイン Ktai Style 1.11 リリース…

    バージョン 1.10 にドキュメントの不備と大きめなバグが見つかったため WordPress 携帯対応プラグイン「Ktai Style」の正式版となるバージョン 1.11 をリリースいたしました。変更点は以下の通…

一言どうぞ