Mobile Link Discoveryタグの投稿

2009-02-22
晴れ

携帯対応プラグイン Ktai Style バージョン 1.48, 1.70 リリース

Ktai Style 1.70 シングルポスト画面

絵文字対応の WordPress 携帯対応プラグイン「Ktai Style」の安定版バージョン 1.70 および、旧安定版 1.48 をリリースいたしました。今回のバージョンから、WordPress のバージョンごとにサポート対象の Ktai Style のバージョンが分かれます。バージョン 1.70 は WordPress 2.5 以降が対象で、旧安定版の 1.48 は WordPress 2.0〜2.3.3 が対象となります。

1.60→1.70 の変更点は次の通りです。

  • 外部サイト接続確認スクリプト redir.php を、外部からの悪用ができないようにしました。また、携帯サイトが見つかったときでも、元のリンク先とホストが異なる場合は中継画面を出すようにしました。(従来は異なるホストでも自動的にリダイレクトしていました) *** これはセキュリティー修正です***
  • WordPress 2.3.3 以前をサポート対象から外しました。動作するかもしれませんが、できれば Ktai Style 1.48 をご利用ください。EUC-JP の言語リソースの添付も中止しました。(UTF-8 の po ファイルから簡単に生成できます)
  • ニンテンドー Wii および DSi でも携帯表示になるようにしました。
  • コメント返信画面
    WordPress 2.7 以降で個別のコメントに返信するときは、コメントフォームの上に、親コメントの内容を表示するようにしました。
  • 携帯電話表示では DISQUS Comment System プラグインを抑制するようにしました。
  • WP Super Cache 0.6.8 以降の場合、手動で .htaccess を書換えなくて済むようにしました。
  • WordPress 2.7 で、コメント投稿時に端末識別情報を必須としているものの、端末識別情報が取得できなかった場合に、PHP のエラーが出るもしくは反応がない不具合を修正しました。
  • Flickr 画像が medium サイズ以外のとき、うまく表示されない不具合を修正しました。
  • Greenテーマ画面 Lovingテーマ画面 Monolithテーマ画面
    Compact テーマは Default テーマに統合しました (ただし、home.php を削除すれば Compact テーマ同等になります)。新たに、Green, Loving, Monolith の3テーマを添付しました。
  • Redportal テーマの多言語化が不十分だったのを修正しました。また、「前の NN 件」「次の NN 件」の言語リソースを Ktai Style 本体に移動しました。他のテーマでもこのローカライズ文字列が使えるようになります。
  • すべてのテーマで、フロントページを固定ページ (静的ページ) に設定しているとき、ブログページ (最新の投稿) へのリンクをフッター部分に追加するようにしました。
  • ?menu=links の URL および ks_list_bookmarks() で表示できるブログロール (リンク集) について、i-mode, EZweb, Yahoo! ケータイ、ディズニー・モバイルの場合、中継ページ経由のリンクになるようにしました (従来はすべて直接リンクになっていました)。
  • 管理パネル (ダッシュボード/コメント一覧) から、コメント返信できるようになりました。
  • Ktai Style 投稿一覧画面
    管理パネルの投稿一覧・ページ一覧に、それぞれの投稿についたコメントの一覧を見られるリンクを付与しました。
  • 投稿やページの本文で2行目以降の行頭にスラッシュ(/)がある場合、携帯閲覧時や携帯での投稿・ページ編集時に行頭のスラッシュが欠落してしまう不具合を修正しました。
  • 年別アーカイブ用のメニュー (menu_years.php) を追加しました。ここで年を選ぶと、その年の月別アーカイブが表示されます。
  • すべてのテーマで、下矢印を示すローカライズ文字列を ↓ に変更しました (従来は「v」という文字を下矢印にしていました)。また、functions.php にあったコメント関連の関数を comments.php に移動しました。
  • iモード端末の場合、big, small 要素が無効のため font size 要素もしくは span style=”font-size:bigger/smaller” に書換えるようにしました。逆に、EZweb 端末の場合、font size=”+1″, font size=”-1″ が効かないため、big, small 要素に書き換えるようにしました。
  • ks_use_appl_xhtml() テンプレートタグによる、HTML からインラインスタイルシートへの変換機能の精度を向上させました。font 要素が入れ子になっていても正常に動作するなどの改良が行なわれています。(Green, Loving, Monolith テーマが対象)
  • 携帯向けページ分割位置を示す start paging, end paging にパラメータを与えれば、分割時の罫線 (<hr />) をカスタマイズできるようにしました。
  • ks_term_name() が au の新機種に対応しました。
  • ks_in_network() がウィルコムの IP アドレス削減に対応しました。
  • ks_comments_link() で、コメント数を示すパラメーターが空文字列のとき、コメント数表示自体をしないようにしました。つまり、コメントがあるときのみコメント数を表示する/コメント停止中のときはその表示自体を隠すようなデザインが可能になります。
  • ks_comments_link(), ks_comments_post_link(), ks_back_to_post() でリンク用文字列を内部で HTML エスエープするのをやめました。このため、HTML を渡すとそのまま表示されます。適宜、テンプレート側で wp_specialchars() などを使って HTML エスケープしておいてください。
  • ks_switch_pc_view(), ks_switch_inline_images() のリンク色を指定できるようにしました。文字の背景色を暗い色にしている場合、リンク色を明るい色に変更して見やすくできます。
  • 次のテンプレートタグを廃止しました: ks_get_ordered_link() (ks_ordered_link() で代替できるようにしました)。
  • 次のテンプレートタグを追加しました: ks_ext_css_available(), ks_page_title(), ks_excerpt(), ks_cut_html(), ks_dropdown_categories(), ks_get_admin_user()
  • 次のテンプレートタグの引数を、配列やクエリー文字列でも可能としました (オプションも増えています): ks_content(), ks_login_link(), ks_ordered_link(), ks_comments_link()
  • external_link フィルターフック用に $icon 引数 (外部サイトを示す絵文字アイコン) を追加しました。絵文字の変更や除去に使えます。
  • split_page_navi フィルターは、sprint() 用のフォーマット文字列ではなく sprint() フォーマットした後の HTML 文字列を渡すようにしました。
  • 次の独自フィルターフックフィルターフックを追加しました: redir_error

1.47→1.48 の変更点は次の通りです。

  • 外部サイト接続確認スクリプト redir.php を、外部からの悪用ができないようにしました。また、携帯サイトが見つかったときでも、元のリンク先とホストが異なる場合は中継画面を出すようにしました。(従来は異なるホストでも自動的にリダイレクトしていました) *** これはセキュリティー修正です***
  • サポート対象を WordPress 2.3.3 までとしました。WordPress 2.5 以降では Ktai Style 1.61 以降をご利用ください。
  • ニンテンドー Wii および DSi でも携帯表示になるようにしました。
  • 携帯電話表示では DISQUS Comment System プラグインを抑制するようにしました。
  • 投稿やページの本文で2行目以降の行頭にスラッシュ(/)がある場合、携帯閲覧時や携帯での投稿・ページ編集時に行頭のスラッシュが欠落してしまう不具合を修正しました。
  • WordPress 2.0 において、コメント投稿時にコメント本文など必須項目を入力していない場合や、外部サイト接続確認を表示しようとすると PHP のエラーもしくは白紙画面になる不具合を修正しました。
  • WordPress 2.0 で <!--nextpage--> でページ分割させた場合、menu_links.php テンプレートを表示させたとき、または ks_list_bookmarks() を使ったとき、画面が途中で途切れる不具合を修正しました。
  • Redportal テーマを EUC-JP 環境でも文字化けしないようにしました。
  • ks_use_appl_xhtml() テンプレートタグによる、HTML からインラインスタイルシートへの変換機能の精度を向上させました。font 要素が入れ子になっていても正常に動作するなどの改良が行なわれています。(ただし、附属テーマは ks_use_appl_xhtml() を使用していません)
  • ks_term_name() が au の新機種に対応しました。
  • ks_in_network() がウィルコムの IP アドレス削減に対応しました。
  • 次のテンプレートタグを追加しました: ks_cookie_available(), ks_ext_css_available(), ks_get_next_num()
  • split_page_navi フィルターは、sprint() 用のフォーマット文字列ではなく sprint() フォーマットした後の HTML 文字列を渡すようにしました。
  • 次の独自フィルターフックフィルターフックを追加しました: redir_error
WordPress 2.5 以降用: ktai_style170.zip (517.3 KB)
より新しいバージョンが出ています。
WordPress 2.0〜2.3.3 用: ktai_style148.tar.bz2 (256.6 KB)
13:50ごろ、ドキュメントを直した版に差し替えました。

今回から、予告通り WordPress のバージョンによって、サポート対象の Ktai Style を分離しました。WordPress 2.3.3 以前を使っている人には申し訳ないですが、Ktai Style 1.48 をご利用頂くか、WordPress をバージョンアップして頂きますようお願いします。(追記: WordPress 2.3 以降は UTF-8 版しか存在しないため、Ktai Style 1.70 はEUC-JP の言語リソース添付を中止しました。EUC-JP を利用する数少ない例外は XOOPS モジュール版 WordPress の XPressEUC ぐらいだと思いますが、これの利用者の方には手動で ktai_style-ja_EUC.mo を作って頂きますようお願いします。Ktai Style 1.48 の方は EUC-JP の言語リソースがあります)

Ktai Style 1.48, 1.70 における大きなトピックは、外部サイト中継用スクリプト redir.php の悪用対策を打ったことです。Ktai Style 0.97 ごろから、外部サイトへのリンクに中継ページを使うようにしましたが、このときは必ず中継ページが出たため悪用する意味がありませんでした。しかし、バージョン 1.40 から相手先に携帯サイト URL を示す Mobile Link Discovery があるか確認し、あればそこに自動的にリダイレクトさせるようにしました。これによって、任意の Ktai Style 利用サイトにある redir.php を経由して悪意あるサイトにリダイレクトする URL を作ることができてしまいます。ただし、redir.php への接続は従来から携帯端末に限定してたため悪用は困難でした。今回、一定時間ごとに変化するランダムな文字列 (ノンス) をキーとして redir.php に与えることを必須としたため、悪用はさらに難しくなりました (コメントやトラックバック等で悪意あるサイト URL を送り込んで携帯サイトに表示させるしかない)。

ホストが違うときの中継ページ画面

また、携帯サイト URL を発見したときでも、ホスト名が元のサイトと異なる場合は「怪しい」と判断して中継ページを出すようにしました。世の中には、ネタフルのように、マトモなサイトであっても PC サイト (netafull.net) と携帯サイト (netafull.jp) のホスト名が違う場合がありますが、こういう事例は例外に近いでしょう。作者としては、PC サイトと携帯サイトの URL が同一であるべきと思います。

Yuriko.Net では、アクセスログを見る限り悪用された形跡はなさそうなのですが、さらなるセキュリティー向上をめざして、対策を打つことにしました。Ktai Style 附属テーマをそのまま使っている場合は、特に作業は不要です。自作テーマにおいて独自の redir.php テンプレートを作っている場合は、修正が必要です (附属ドキュメントや附属テーマを参照してください)。お手数をおかけしますが、よろしくお願いします。

Ktai Style 1.70 の開発におきましては、多くの方から頂いた改善案や不具合報告が助けになりました。まことにありがとうございます。今後も、お気軽に、質問・要望・不具合報告を寄せて頂ければ幸いです。

2008-09-20
晴れ

携帯対応プラグイン Ktai Style バージョン 1.44 リリース

Ktai Style サンプル画面

絵文字対応の WordPress 携帯対応プラグイン「Ktai Style」の安定版バージョン 1.44 をリリースいたしました。1.43 からの変更点は次の通りです。

  • EMOBILE H11HW, SONY mylo で閲覧したとき携帯向け表示をさせるようにしました (H11HW については、実機テストをしていません)。
  • 最新コメント一覧 (テンプレート menu_comments.php を使用した出力) を、端末のキャッシュに残さないようにしました (au 端末はキャッシュに残ってしまい、ページ更新しない限り最新情報ではありませんでした)。
  • 携帯対応ブログとして teacup.ブログ Auto Page (http://autopage.teacup.com/) を追加しました。
  • 外部サイトへのリンクをクリックしたとき、携帯サイトが存在するかの確認 (Mobile Link Discovery の検出) でタイムアウトしたり白紙画面になったりすることがある事象を改善しました。また、外部サイトの URI にポート番号を含む場合 (http://blog.example.jp:10080/ のような場合) に携帯サイトの検出ができるよう改善しました。
  • a 要素で class=”pconly” というクラス指定をした場合、または、shrinkage.php の $none_mobile_url および none_mobile_url フィルターで追加したサイトに対しては、Mobile Link Discovery の検出をせずにすぐ中継ページを出すようにしました。
  • スマートフォン等 (「その他」端末) において、「PC 表示にする」リンクをクリックして PC 表示に切り替えた場合、テーマによっては「携帯表示にする」の背景色であるグレーが背景全体に広がってしまうことがある現象を回避するようにしました。
  • WordPress MU において、画像が表示されない/リンクにならない/wp-signup.php を実行したときに PHP エラーが発生するなどの不具合を改善しました。(注意: WordPress MU での動作を保証したわけではありません)
  • au の絵文字と他機種絵文字の対応を一部変更しました。
  • au およびイー・モバイルの新機種について、ks_term_name() による機種名抽出に対応しました。
  • iモード用に追加される予定の IP アドレス帯域に対応しました。
  • テンプレートタグ ks_is_menu() にオプションの引数を追加しました。
  • 次の独自フィルターフックを追加しました: ks_login_logo, switch_ktai_view_css, switch_ktai_view
ダウンロード: ktai_style144_1.tar.bz2 (245.4 KB)
2008-09-20 23:23 ごろ、配布アーカイブを差し替えました。旧版は外部サイトのリンクをクリックするとすべて PC サイトと判断してしまうバグがありました。

最新版をご利用ください。

今回は各社新機種対応、バグ修正およびそれに伴う微小な機能向上となっています。お手数ですが、アップデートしていただきますようお願いします。あと、今回は利用者さんへのトラックバック・ピンバックはとりあえず省略しています。気が向いたら後でピン送信するかもしれません。

2008-08-01
晴れ

Mobile Eye+ パッチ (その1) リリース

ゆりこ による 06:58:08 の投稿
カテゴリー: WordPressハック
タグ: , , , , ,

製作中だった Mobile Eye+ へのパッチですが、やっと形になったので公開いたします。パッチその2をリリースいたしましました。

パッチによる修正点は以下の通りです。

  • PC 表示で Mobile Link Discovery を追加しました。これにより、「同じ URL で携帯対応している」ことを検索エンジンや Ktai Style に通知することができます。
  • イー・モバイルの音声端末 H11T でも携帯表示にします。(EMONSTER, H11HW は携帯表示になりません)
  • フロントページ (トップページ) は携帯電話にキャッシュされないようにします (au 端末対策)。
  • URLGATE 機能で、使用する外部サービスを個別に ON/OFF できる機能を追加します。
  • 「ブログのパーマリンク」の設定機能を削除します。(WordPress 2.3 以降では「使用しない」で不具合が出るため、「使用する」に固定です)
  • 自サイト内のリンクなのに URLGATE 画面が出てしまう場合があった不具合を修正します。
  • URLGATE 画面で、ドコモ端末では URL のコピー用テキストフィールドが出なかった不具合を修正します。
  • 「画像リサイズ (srea.jp)」のサーバー削減に対応します。
  • ホスト名にポート番号がつく場合 (http://example.com:8080/ のような URL) でも正常動作するようにします。
  • 「ユーザー登録してログインしたユーザーのみコメントをつけられるようにする」の設定をしている場合、コメント投稿フォームが出ないように修正します。
  • 設定パネルを WordPress 2.5 以降の見た目に適応させます。
  • 設定パネルにおいて、WordPress Japan フォーラムへのリンクを WordPress 日本語フォーラムに変更します。
  • テーマのフッターから「十六夜.JP」へのリンクを削除します。
  • Ktai Style の default テーマに似たテーマが添付しています (UTF-8 文字コード専用)。

ダウンロードは「Mobile Eye+ パッチ配布ページ」から行なってください。さすがに「WordPress Plugins/JSeries」で配布するわけにいかないので、当サイトで配布することにします。

今後継続してパッチを開発するかどうかは分かりません。あまり改変しまくるとまおうさんが開発再開するモチベーションを失なってしまいそうなので、最低限の修正に留めたいと思っています。できれば、今回のパッチを取り込んでもらって「Mobile Eye+ v1.4.0」をリリースしてもらいたいところですが、今回の修正点が作者の意向と合うかどうかは分からないので、実現可能性は謎ですね〜〜。

2008-06-18
晴れ

携帯対応プラグイン Ktai Style バージョン 1.40 リリース

Ktai Style サンプル画面

絵文字対応の WordPress 携帯対応プラグイン「Ktai Style」の安定版バージョン 1.40 をリリースいたしました。1.36 からの変更点は次の通りです。

  • Palm OS ハンドヘルド、シャープ Zaurus も携帯表示をさせるようにしました。
  • スマートフォン等の「その他」端末では、プラグイン画像をそのまま表示させるようにしました。例えば、FireStats の国旗・OS・ブラウザーアイコンが、プラグイン組み込みのものがそのまま出ます。
  • ウィルコム、イー・モバイル、スマートフォン等の「その他」端末では、外部サイトへのリンクにアイコンをつけるのをやめました。もともと直接リンクしており、アイコンをつける意味はありませんでした。
  • PC やスマートフォンでも絵文字が画像で表示されるようにしました。今のところ、iモード絵文字のみすべて画像で出ます。それ以外の絵文字は順次対応する予定です。
  • 外部サイトへの中継ページを出す直前で相手先にアクセスして Mobile Link Discovery を確認し、携帯ページを発見すれば直接リンクするようになりました。このため「PC向け」の表示を「外部サイト」に変更しました。
  • RSS2 フィードにも Mobile Link Discovery を出力するようにしました。
  • 「携帯表示」設定画面のテーマ一覧で、style.css に記載されたテーマ名称およびバージョンを表示させるようにしました。従来はテーマのフォルダー (ディレクトリー) 名を出していました。
  • コメントへの絵文字使用を認めない場合、ソフトバンク絵文字がウェブコードのまま残っていましたが、積極的に除去するようにしました。
  • 投稿管理およびコメント管理で、ページナビゲーションをリストの下に移動しました。
  • in_network() メソッドをウィルコムの IP アドレス帯域追加に対応させました。
  • 言語リソースを lang フォルダーに、電話キャリアー用ライブラリーを operators ディレクトリーに移動しました。
  • 附属テーマの PHP, XHTML の記述を見やすいよう改善しました。テーマの見栄えは従来と同じです。
  • Windows サーバーで運営していて、かつ、プラグインのフォルダー名を ktai_style 以外に変更しているとき、正常に動作しない不具合を修正しました。
  • GD が組み込まれていない PHP で稼動させたときでも異常終了しないようにしました。
  • comment_form アクションを利用してコメント投稿フォームにフィールドを追加するプラグインが正常に動作しない不具合を修正しました。
ダウンロード: ktai_style140.tar.bz2 (234.5 KB)
6-18 23:00 ごろ、バグ修正1点を追加したアーカイブに差し替えました。

バージョン 1.41 をリリースしました。

今回は、だいぶ前から作っていた 1.50 テスト版、1.40 ベータ版を正式版としたものです。数々の改善がされていますが、目玉は PC・スマートフォンでも絵文字が画像として表示できることでしょう。まだまだ絵文字画像が少ないため、今後ぼちぼちと追加していく予定です。投稿画面でのファイル添付機能は今回見送りました。しばらくお待ちください。

2008-05-24
くもりのち雨

Mobile Link Discovery 仕様書が消えた

ゆりこ による 06:50:03 の投稿
カテゴリー: ソフトウェア
タグ: , ,

Ktai Style 1.50-test2 で他サイトの Mobile Link Discovery (MLD) 検出に対応したのですが、肝心の MLD 仕様書が Not Found になってしまいました。test2 公開時は http://www.sixapart.jp/docs/tech/mobile_link_discovery_ja.html で見られたのですが、きのうあたりには見えなくなっています……。

シックスアパートがサイトリニューアルしたわけでもないですから、ちょっと不思議です。とはいえ、URL が変更になったとしてもそれはそれでダサいですよね (クールな URI は変わらない)。早期の復旧を期待します。

XHTML への MLD 埋め込みはだいぶ前に実装しましたが、RSS や ATOM への MLD 埋め込みはまだなので、対応しようかと目論んだのですが、仕様書が消えてしまったのは困りました……。

2008-02-25
晴れ

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

Ktai Style バージョン1.10画面

さっそくですが、WordPress 携帯対応プラグイン「Ktai Style」のバージョン 1.10 をリリースいたしました。主な変更点は以下の通りです。

  • 各社 3G, WILLCOM, その他端末では、小型サムネールを生成してインライン表示させるようにしました。
  • 元画像が PNG (または GIF) 画像の場合、GIF (または PNG) 画像を自動生成して、PNG が閲覧できない i-mode 端末、GIF が閲覧できない SoftBank PDC 端末でも画像が見られるようにしました。
  • PC 向けページのヘッダに Mobile Link Discovery を挿入するようにしました。Google モバイル、Livedoor ブログ等、Mobile Link Discovery に対応したサービスの携帯ページから Ktai Style をインストールしたブログにリンクしている場合、Ktai Style による出力が表示されるようになるはずです。
  • 携帯電話でアクセスしたとき、WP-SpamFree プラグインが起動しないようにしました。
  • classic, compact, default テーマのフッタで「plug-in」という誤記を修正しました。
  • (その他の修正点)
ダウンロード: ktai_style110.tar.bz2 (106.7 KB)
バージョン 1.11 をリリースしました。

バージョン 1.01 から1週間しか経っていませんが、新バージョンをリリースします。今回は、3G 端末等で画像をインライン表示できるようにしました。画像を一律にリンクにするのは、パケット節約では効果的ですが、見栄えの点ではいまいちでした。今後は、それなりに見映えのある携帯サイトになるでしょう。

Ktai Style の開発は、今のところわたし1人なので、機能追加の予定を1つ1つ実現するごとにマイナーバージョンアップすることにします。複数人の開発ならば、それぞれの機能を分担して、それをまとめてメジャーバージョンアップとすればいいですが、1人ならば、機能を1つずつ作ることになるわけで、それぞれの機能ができる度に公開した方がいいと考えています。かんたんログインは実装方法にまだ悩んでいて、画像アップロードも少し作業が難航しています……。次のバージョンはちょっと時間がかかりそうです。