2007年9月24日の投稿

2007-09-24
くもり

絵文字対応の WordPress 向け携帯電話閲覧プラグイン Ktai Style 0.81 リリース

ゆりこ による 13:14:34 の投稿
カテゴリー: WordPressハック
タグ: , , , , , ,

きのう出した 0.80 はバグが多すぎるので、WordPress 向け携帯電話閲覧プラグイン「Ktai Style」の新バージョン 0.81 をリリースいたします。主な修正点は以下の通りです。プラグインの詳細は配布サイトをご覧ください。0.80 についてバグ報告を頂いた Sa・Ga さんには深く感謝いたします。

  • フロントページを記事一覧だけのスタイルにできる xx_home.php を添付しました。(home.php にリネームして使うこと)
  • コメント一覧/コメント投稿フォームのテンプレートを合体して comments.php にしました。WordPress 標準に近い型式となりました。(0.80 のテンプレートはアドホックで汚なすぎ!!)
  • パーマリンク構造がデフォルトの場合、コメント閲覧・投稿ができない不具合を修正しました。
  • ホスト名直下に WordPress をインストールしている環境でコメント投稿できないことがある問題を修正しました。
  • コメント一覧でも外部サイトへのリンクを除去するようにしました。

ナイトリービルドの状況になっていますが、次に実装予定の、5KB ごとのページ分割機能と検索フォーム設置は実装が比較的困難と予想されるので、リリースまで時間がかかるでしょう……。

ページ分割機能ですが、今のところ、index.php, page.php, single.php に <!–start pager–> と <!–end pager–> という記述を入れて、これらで囲まれた範囲をページ分割対象にする実装を検討しています。こうすれば、全ページに共通なヘッダー・フッターは分割されたページすべてに出すことができます。問題は、XHTML タグの途中で分割された場合の処理と、分割されたページの URL をどうするか、です。前者は WordPress にある balanceTags() 関数が使えれば簡単に実装できそうです。後者は、クエリー文字列として ?ktai_paged=nn という方向にしようかと思っています。

実は難しいのが検索フォームです。WordPress 標準では、http://example.jp/s=XXXX とすれば、XXXX という文字列で検索した結果を表示します。XXXX が日本語の場合は UTF-8 でエンコードされるのが基本なので、Shift_JIS を使う携帯電話ページでは、そのままでは検索フォームを設置できません。ks=XXXX というクエリー文字列を発行して、エンコード変換して s=XXXX に直してリダイレクトすれば単純ですが、端末によっては「ページが移動しました」という表示が出てかっこ悪いです。

したがって、ks=XXXX というクエリーを発行して、直接検索結果が表示されるのが美しい実装となります。しかし、その場合、WordPress の URL 解釈機構に割り込まないといけません。WordPress の内部を解析して、どうすればよいか考えてみます……。

[追記] 検索フォームを実装したバージョン 0.82 をリリースしました。