2009年2月の投稿

au 春モデル・ソフトバンク春モデルどちらも防水機種なし
先月1月29日に、au・ソフトバンクの春モデルが発表されましたが (KDDI のプレスリリース、ソフトバンクモバイルのプレスリリース)、どちらも防水対応端末がありませんでした。両社とも、夏は防水端末が多かった気がしますが、水泳シーズンが終わると出なくなってしまいました 携帯電話って1年使うものだけに、冬や春に買うとしても、「夏に水場で使う」ことを考慮するはずなのにーー。
au は型番ルールを変更したくせに、あまり魅力的な端末がありません。KCP+ 搭載および液晶の VGA, WVGA 化は進んでいますが、全機種ではないですし……。CA001 は G’z One W62CA に似たデザインなのに防水対応じゃないし……。これが防水ならば E03CA から買い替えたかもしれないのに!!
ソフトバンクは、秋冬モデルの弱点 (GPS 搭載モデルがない) を改良してきたのですが、どうしても欲しいという機種に乏しいです。930CA は、今度こそ EXILM ケータイを名乗ってきましたが、やはり中身は NEC 製らしく、写真撮影→メール投稿とすると、添付ファイルの名前は「image.jpg」になるようです (ITmedia の記事参照)。これではせっかくのブログツールもダメですね……。
けっきょく、春モデルはドコモの勝利ということでしょうか?
ドコモ mova は2012年3月末終了
先月30日、NTT ドコモは、mova サービスを2012年3月31日をもって終了すると発表しました。総務省が決めた800MHz帯の使用期限は7月24日だっただけに、それから4か月ほど早い終了ということですね。
ソフトバンク PDC の終了は2010年3月末だけに、それよりも2年長く使えます。サービス開始はソフトバンク PDC よりも先なのに終了は後というのは、総務省の策略というか何というか……。
Ktai Style の PDC 向けチェックのために、手持ちの mova 端末をデュアルネットワーク化して追加しようかと思っていましたが、受付が今年3月末で終了してしまうようです。月300円もかけて PDC 環境を維持すべきどうか悩みます……。もはや PDC はサポート外としてもいいかも??

Ktai Style 1.61-beta3 配布
Ktai Style 次期バージョン 1.61 のベータ版(その3) を配布いたします。バージョン1.61 ベータ2からの変更点は以下の通りです。
- Compact テーマは Default テーマに統合しました (ただし、home.php を削除すれば Compact テーマ同等になります)。新たに、Green, Loving, Monolith の3テーマを添付しました。
- ページ一覧に、それぞれの投稿についたコメントの一覧を見られるリンクを付与しました。
- WordPress 2.6 以前で、特定の投稿・ページについたコメント一覧をしようとしても、全コメントがリストされた不具合を修正しました。
- すべてのテーマで、functions.php にあったコメント関連の関数を comments.php に移動しました。
- 携帯向けページ分割位置を示す start paging, end paging にパラメータを与えれば、分割時の罫線 (<hr />) をカスタマイズできるようにしました。
ks_use_appl_xhtml()
テンプレートタグによる、HTML からインラインスタイルシートへの変換機能の精度を向上させました。ks_term_name()
が au の新機種に対応しました。- 次のテンプレートタグを追加しました:
ks_excerpt()
beta3 は、テーマの扱いを向上しています。HaRD さんから頂いた不具合報告や要望を検討して、かなりの部分を取り込みました (色設定をグローバル変数に入れる/ページ分割時の色設定ができる等)。なお、Compact テーマを削除して、新テーマ3種をすべて 1.61 正式版でも添付することにしました (計6テーマ)。Loving テーマは、以前のヘッダー画像だと恥ずかしすぎて一般に配布するには向かないので、ゴシック調の落ちついたものを作成してそれをデフォルトとしました (ネタとしてくちびる版も添付しています)。
ついにライチンゲールさんレジェンドに!!
本日のケータイ大喜利は20分という短縮放送でしたが、あのライチンゲールさんがアンテナ3本を獲得してレジェンドに昇格されました!! メジャー7段に昇格してから何回も作品を読まれつつも、ずっと昇格できないという不運のメジャー・オオギリーガーです。しまいに、「昇格できない」ことを大喜利のネタにされる始末でした。しかし、今回の作品は文句なしにオモロく、見事に昇格となりました。しかも、最優秀作品賞も獲得です! おめでとうございます!!
わたしの方は、事前投稿でいまいちのしか作れず、当日はアイディアが出なかったので、残念ながらダメでした。次回から3回にわたって入れ替え戦が始まりますが、残れるのかな〜〜。レジェンドは入れ替え戦対象外 (無条件で残留) なので、ライチンゲールさんは安心ですね さて、今回の没ネタは以下の通りです。
- 元気田イクゾー「チョコもらいたくて必死だな」
-
- 土曜なのに14日に全校集会を計画する
- 校門に「バレンタインまであと7日」というアーチを作った
- 全クラスのカレンダーで14日に花丸を書いた
- やたら甘党を強調しだした
- 女子と目が合うと、「分かってるな」と目配せする
- 毎日校門前で自らチョコレートを販売
- ホワイトデーのお返しをすでに準備して見せびらかしている

iPhone/iPod touch 風携帯テーマ
Telmina さんからヒントを頂いて制作していた、iPhone/iPod touch 風の携帯テーマ (名前は iPotch の予定) が、ほぼ形になりました。端末の制約により、ドコモおよびウィルコムでは期待通りになりません。左から、EZweb の画面、ドコモ FOMA の画面、ウィルコムの画面です (ただし、FireMobileSimulator での表示)。EZweb は意図した通りの画面です (端末によっては太字が再現されません)。さすがに、iPhone + WPtouch のように、角丸の枠とか、カレンダー風の日付表示はできませんでした。画像と文字の重ね合わせが無理なので、やるとすれば 366日分のカレンダー画像を準備(!)しなければなりません。ドコモでは、スタイルシートで margin, padding, border が使えないので、「背景に枠を浮かせる」デザインができず、画面の左右端まで白い部分が広がります。ウィルコムは携帯モードではスタイルシートが使えないので、背景全面がピンストライプになってしまいます。ここでは見えていませんが、画面下部のメニュー部分は字だけ白くなってて悲惨です
まだ製作中で、かつ、Ktai Style の開発中バージョンが必要なため、すぐの配布はできません。1.61 正式版のリリース時にこのテーマも公開を予定しています。
今回のテーマ制作にあたって、またも Ktai Style 自体の機能増強を行いました。携帯テーマでも PHP がそのまま使えるので、力技を使えばテーマ側のコーディングだけでも実現可能ですが、多くの人がテーマ制作しやすいよう、機能アップを図ることにしています。今回は、コメント数が0などのとき、コメント数表示自体を隠せる機能、コメント数表示に HTML を書けるようにする仕様変更を行っています。後者は、XSS 脆弱性の元になりかねないので、テーマ製作者のみなさんは要注意です。
あと、従来は EZweb 端末でフォントサイズが小さくならなかった不具合を改善しています。EZweb では <font size=”-1″> とか <span style=”font-size:smaller”> の指定が効かないのが理由でした (+1 や bigger も同様)。代わりに <small> や <span style=”font-size:small”> を使えばフォントサイズを変えられます (端末によっては不可能)。そこで、テーマファイルに <font size=”-1″> があれば <small> ないし <span style=”font-size:small”> に書き換えるようにしました (+1 のときは big)。逆に、ドコモでは <small> が使えないので、テーマファイルにそれがあれば <font size=”-1″> とかに書き換えています。注意点として、Ktai Style の実装上、font タグが入れ子になっているとうまく動かないため、big/small タグと font color の指定を入れ子にするのも避けなければなりません。両方を指定したいならば、<font size=”-1″ color=”red> のように、1つの font 要素にまとめることを推奨します。


Ktai Style 1.61-rc1 配布
Ktai Style 次期バージョン 1.61 のリリース候補版 (その1) を配布いたします。バージョン1.61 ベータ3からの変更点は以下の通りです。
- ニンテンドー Wii および DSi でも携帯表示になるようにしました。
- 投稿やページの本文で2行目以降の行頭にスラッシュ(/)がある場合、携帯閲覧時や携帯での投稿・ページ編集時に行頭のスラッシュが欠落してしまう不具合を修正しました。
- Green テーマのシングルポスト表示で、絵文字を変更しました (カテゴリーを太陽、タグを虫めがね、コメント数を若葉)。
- 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 要素が入れ子になっていても正常に動作するなどの改良が行なわれています。(Redportal, Green, Loving, Monolith テーマが対象)ks_in_network()
がウィルコムの IP アドレス削減に対応しました。ks_comments_link()
で、コメント数を示すパラメーターが空文字列のとき、コメント数表示自体をしないようにしました。つまり、コメントがあるときのみコメント数を表示する/コメント停止中のときはその表示自体を隠すようなデザインが可能になります。ks_comments_link(), ks_comments_post_link(), ks_back_to_post()
でリンク用文字列を内部で HTML エスエープするのをやめました。このため、HTML を渡すとそのまま表示されます。適宜、テンプレート側でwp_specialchars()
などを使って HTML エスケープしておいてください。- 次のテンプレートタグを追加しました:
ks_ext_css_available()
- external_link フィルターフック用に
$icon
引数 (外部サイトを示す絵文字アイコン) を追加しました。絵文字の変更や除去に使えます。
ベータ3から細かな改善を行なって品質を向上させています。そのままリリースしてもいいんですが、修正点が多いため、念のため「リリース候補版」を配布しておきます。今回は特別に、「iPotch テーマ」と、「Photolog テーマ」(右上の画像) を添付しています (1.61 正式版では入らない予定)。どちらも新しい技術を導入しているので、独自テーマを作りたい人は参考にしてみてください。

HTML エスケープなしの出力は怖い
Ktai Style 1.61-rc1に同梱した Photolog テーマは、WordPress のメディアライブラリに登録された画像を探して、投稿一覧に貼り付けるという動作をしています。こういう動作は最近人気があるようで(?)、ひろまささんが wp-kougabu に機能追加したりしています。さきほど見つけたのは「WordPressの最新の記事から画像を一覧表示する」というコードでした。
<?php query_posts('showposts=10'); if ( have_posts() ) : while ( have_posts() ) : the_post(); $files = get_children("post_parent=$id&post_type=attachment&post_mime_type=image"); if (!emptyempty($files)){ $keys = array_keys($files); $num=$keys[0]; $thumb=wp_get_attachment_thumb_url($num); print "<a href=\"".get_permalink()."\" title=\"$post->post_title\"> <img src=\"$thumb\" width=\"80\" height=\"80\" alt=\"$post->post_title\" /></a>\n"; } endwhile;else: endif;?>
しかし、このコードを見てびっくりしました。一切 HTML エスケープがされていないからです!! まあ、表示するのは「サイト運営者が入力した情報」である、投稿のパーマリンクとタイトル、画像の URL だけなので、XSS 脆弱性とは言いにくいですが……。ただし、投稿タイトルとして「大阪 -> 京都のきっぷ」というのがあれば、HTML のパースエラーが発生してしまいます。
さて、先方に連絡しようにも、当該の投稿にはコメントフォームがありません。ウェブサイトを見てもコンタクトフォームも連絡先も見つかりません。最後の手段としてピンバックが動作することを期待して、このエントリーを書いたわけです
素人ならともかく、WordPress のカスタマイズを業務として行なっている方が、こういうコーディングをしてしまうのは不安になってしまいます。HTML エスケープなんて基礎の基礎ですよ!!
さて、改善方法ですが、URL を出すところに WordPress のエスケープ関数である attribute_escape(), clean_url()
を使うのがよいですね。post_title
を出しているところは、API 関数の the_title_attribute()
を使った方がよいでしょう (ただし、事前に global $post;
しておくことが必要)。HTML を組み立てるクォート文字列もシングルクォートにしておけば、HTML 内で使うダブルクォートをバックスラッシュでエスケープしなくて済むので見通しがよくなりますね。
print '<a href="' . clean_url(get_permalink()) . '" title="' . the_title_attribute('echo=0') . '"><img src="' . clean_url($thumb) . '" width="80" height="80" alt="' . the_title_attribute('echo=0') . '" /></a>' . "\n";
WordPress のテクニックをいろいろ公開されるのは素晴しいことですが、こういうセキュリティーの甘いコードを公開するのは困りますね〜〜。せめてツッコミを入れられるようにコメントフォームを開けておいてもらえると助かります。
Ktai Style 1.61 はちょっと延期かも
Ktai Style 1.61-rc1 を利用されている方はお気付きかもしれませんが、1.61 正式版は今日を予定していました (HISTORY.ja.html に 1.61 のリリース日として2月14日と書いてあった)。そして、同時に 1.4x 系ブランチもアップデート予定でした。しかし、テスト段階でちょっと大きめのバグが複数発見されたため、今日のリリースは無理で、数日延期になる見込みです。
- WordPress 2.7 では、コメント投稿時に PHP のエラーが出るもしくは反応がなくなることがありました。コメント時に必須項目がないときエラー文字列を
wp_specialchars()
でエスケープしていましたが、WordPress 2.7 で配列を入れられなくなったことが理由でした (従来は配列 OK だった)。これは、コメントのテンプレート comments.php の修正が必要なため、自作テーマを作っている方には影響大です。Readme で以下のような修正を案内する予定です。
(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'])));
- Ktai Style 1.60 が WordPress 2.1.3 以前で正しく動作しないことが判明しました。WP 2.0 にWalker クラスがなく、WP 2.1.x 以前に
number_format_i18n(), user_trailingslashit()
関数がないのに無理矢理使っていためです。 - WordPress 2.0 で、コメント投稿時にコメント本文など必須項目を入力していない場合や、外部サイト接続確認を表示しようとすると PHP のエラー表示もしくは白紙画面になっていました (Ktai Style 1.30 以降が対象)。これは
did_action()
関数がないのに無理矢理実行していたためです。WordPress 2.0 でのコメント投稿は正常系のみ試験していたので見つかってませんでした……。 - WordPress 2.0 では
wp_list_bookmarks()
が使えないので、rc1 ではks_list_bookmarks()
の出力を空にしていましたが、代わりに古いタグであるget_links_list()
を使うようにしました。
WordPress 2.0 への不具合が多いのは嫌ですね。いちおう動作すると明言している以上、きちんとテストすべきですが、漏れていたのは申し訳ありません。1.4x 系統にもバックポートすべき項目も多く、けっこう手間がかかります。
WP 2.0 + Ktai Style の動作報告がほとんどないのが辛いところです。WordPress 2.0 系統を使っている人がそもそも少なく、まして Ktai Style 利用というのは、かなりマイナーかもしれません。(まだ Otsukare さん版の Mobile Eye のままの人がいる?)
[追記] けっきょく、バージョン番号は 1.70 に変更した上で、2月22日にリリースしました。
NHK は Yahoo! 使い?
きょう配信されたケータイ大喜利メルマガで、「『大喜利・ライチンゲール』で検索すると『ナイチンゲールではありませんか?』と聞き返されるライチンゲールさん。ほんとうにおめでとうございました」というくだりがありました。はて? Google 検索では、そういう表示を見たことがありません。
しかし、Yahoo! 検索を試してみると、見事にそういう表示が出ました!! NHK (のケータイ大喜利スタッフ) は Yahoo! 使いなのかな〜〜。Google で「ライチンゲール」を検索すると、ケータイ大喜利公式サイトが5位まで出てこないのも、何だかなあという気がします。「大喜利 ライチンゲール」だと、5ページ目にならないと出てこないので、NHK ウェブサイトは Google に嫌われているのかも……。