2008年7月の投稿

Ktai Style 1.41 で Google 地図が出ない
先日リリースした Ktai Style 1.41 ですが、拙作のLightweight Google Maps (LWGM) と互換性がなく、携帯電話表示で地図が出ないという問題があることが分かりました。「mobile_same_url 用のフィルター関数を携帯テーマの functions.php に書ける」ようにするため、携帯テーマ用関数を定義する tags.php を読み込ませるタイミングを遅らせたのですが、LWGM の初期化段階で tags.php の関数を使っていたたため、結果として LWGM が Ktai Style を認識できなくなり、地図を出さなくなっていたのでした。
WordPress 2.6 対応のため LWGM のアップデートが必要だったのですが、これでは急いで直す必要があります。さほど大きい変更ではないはずなので、簡単にテストして今週中には出すようにしましょう。
[追記] バージョン 1.30 にて修正いたしました。なお、Ktai Style もバージョン 1.42 以降にアップデートすることが必要です。

ソフトバンクから巻き取りハガキ
先日ソフトバンクからPDCサービス終了時期についてアナウンスがありましたが、ユーザーへの個別連絡も始まりました。まずは、3Gに機種変更したら1万円の商品券が提供されるようです。
しかし、条件として、新スーパーボーナス加入が必須になっているのは考え物です。スパボに入ってしまうと、J-PHONE時代から提供されているアフターサービス(月額315円)が解除されてしまい、高価な安心保証パック(498円)しか入れなくなるからです。また、スパボに入れるのは、1契約者当たり2回線という制限があるので、すでに複数回線持っている人(世帯主が家族全員の回線も持ってるなど)はスパボに入れず、結果として商品券も貰えません。大体、機種変更価格を1万円引きとしないで、商品券を出す時点でふざけてますよね。関西や東海地方では、これに応える人は少なそうです
まあ、こういう巻き取り施策は待てば待つほど条件が良くなるのが基本ですから、みなさん粘りましょう!! でもケチなソフトバンクモバイルなので、あまり特典が良くならない気もする……。最終的には「iPhoneに無料で機種変」出来ることを期待してるんですが
Yuriko.Net で使用しているプラグイン
Masayan さんところで「もし今、WordPressのプラグインフォルダに10個のプラグインしか追加できないとしたら、最低限何を入れますか?」というトラックバック企画が行なわれていますので、乗っかってみましょう。当サイトで使用しているプラグインは、一応自己紹介に書いてある通りならば「7つ」(Akismet, WP-Multibyte-Patch 除く) ですが、実はそこから微妙に増えていて12個になってしまいました。
ということで、そこから優先度の低いものを削ると以下の通りでしょうか。
- Edit Comments XT (Wöhrer 氏作)
- 非ログインユーザーがコメント投稿した場合でも、ユーザー自身が一定時間だけ編集可能とする。
- EventCal (自作・未公開)
- サイドバーのイベントカレンダー。日本の祝日対応
- Force Wave Dash (自作)
- Windows 環境で入力した「全角チルダ」を「波ダッシュ」に補正。
- Ktai Entry (自作)
- メール投稿 (モブログ)
- Ktai Style (自作)
- 携帯電話対応。軽量なページを表示・簡易的な管理機構を提供。
- Reject Short Comments (自作)
- スパムコメント/トラックバック対策。短いコメントやトラックバックを拒否。
- Weather Journal (自作)
- 日付の横に自分で入力したお天気を表示。
- WordPress.com Stats (Skelton 氏作)
- WordPress.com のアクセス統計機能を自分のサイトで使えるようにする。
- Ynet Permalink (自作・未公開)
- 以前の Yuriko.Net におけるパーマリンク体系 (/arc/YYYY/mm/ddX) を実現。
旅行記の方では位置情報と地図が必須なので、拙作のKtai Location および Lightweight Google Maps が追加になります。そのかわり、Ynet Permalink は不要になるため、都合10個に収まります。
同じく拙作の JSeries Notifier ですが、自サイトでは常に最新版が入っているので使う必要がありません。また、サイドバーでアーカイブを年ごとに折り畳む処理は、テーマファイルの functions.php で自作関数 (未公開) を書いているため「プラグインの個数」の制約にはひっかかりません スパム軽減プラグインのNonce! Please も、テーマの comments.php や functions.php に押し込めることが可能なので、必須プラグインからは外れます。
WordPress 導入以前の Yuriko.Net の見た目・機能を実現するための自作単機能プラグインが多く、他人さんのプラグインは非常に少ないです。これは、「既存のプラグインに満足できるものが少ない」「他人のコードが信用できない」「自分でプラグインを作るのが楽しい」という理由もあります。2番目の理由は結構深刻で、セキュリティーに無頓着なプラグインが結構あるんですよね……。以前、旅行記では「Plug’n Play Google Map」を使っていましたが、地点数が増えると PHP メモリー不足になることと、XSS 脆弱性があったことで、「人気があるプラグインでも信用ならない」ことが分かってしまいました。作者にセキュリティーホールを報告しても梨のつぶてで、これが「自分でプラグインを書く」きっかけとなり、他人のプラグインを入れるのは慎重になりました。
といっても、Edit Comments XT, WordPress.com Stats については、セキュリティーホールがないことのチェックはサボっていますが
[追記] しまった。旅行記の方では「Change Thumbnail Max Side Length」も必須でした (WordPress コア改造で逃げるか、テーマの functions.php に移設する手もありますが)。そのままだと11個になってしまうので、WordPress.com Stats を外すことにします。

携帯対応プラグイン Ktai Style バージョン 1.42 リリース
絵文字対応の WordPress 携帯対応プラグイン「Ktai Style」の安定版バージョン 1.42 をリリースいたしました。1.41 からの変更点は次の通りです。
- a 要素に href 属性がない場合はリンクとみなさないようにしました (従来は <a name=”foo”></a> のような場合も外部リンクとして中継ページを出してしまっていました)。
- リンク先に Mobile Link Discovery があるかの確認で、モバイル版ページの URL を確実にできるよう改善しました。(Ktai Style 1.41 でも抽出できない場合があったので、さらに改良)
is_ktai()
関数の引数に ‘flat_rate’ を与えると、定額パケット通信に対応しているかどうかを返すようにしました (ks_is_flat_rate()
と同じ返り値)。- wp-content/ktai-themes/ ディレクトリーに格納したテーマを設定できない不具合を修正しました。(Ktai Style 1.41 で発生したバグ)
- 画像のファイル名が thumbnail.jpg や 160×120.png のような形式 *ではない* 場合 (image.jpg, sample.gif など)、携帯電話向けサムネール (最大96ピクセル) を作らずそのまま表示していた不具合を改善しました (Ktai Style 1.41 で発生したバグ)。
- コメント時にログインしたとき、コメント投稿後、「cannot redeclare class…」のエラー (クラスの重複定義エラー) が出ることがある不具合を修正しました。
2008-07-11 07:25 ごろ、
ks_is_flat_rate()
の不具合を直したアーカイブに差し替えました。→バージョン 1.43 をリリースしました。
今回は 1.41 で発生したエンバグの修正がメインです。お手数ですが、更新して頂けると幸いです。
[追記] ks_is_flat_rate()
に問題があったのでアーカイブを差し替えました。あと、Ktai Style 1.42 に対応した Lightweight Google Maps も今日か明日にはリリースいたします。→リリースしました。

Google Maps プラグイン Lightweight Google Maps 1.30 リリース
WordPress 用 Google Maps プラグイン「Lightweight Google Maps」のバージョン 1.30 をリリースします。変更点は以下の通りです。
- 固定ページの地図で、キーワードタグでの絞り込みに対応しました (WordPress 2.3 以降が必要)。
- 携帯電話向け地図を出す機能は Ktai Style 1.42 以降が必要となりました (Ktai Style 1.41 以前では地図が出ません)。
- WordPress 2.6 ベータ版への対応を盛り込みました。
- 各エントリーの地図を「固定ページへのリンク」にしている場合、「この位置を大きい地図で見る」リンクが出力されない不具合を修正しました (バージョン 1.20 で発生した不具合)。
今回は、Ktai Style バージョン 1.41 で地図が出なくなった問題の対応、WordPress 2.6 ベータ版への対応がメインです。おまけとしてキーワードタグでの絞り込みにも対応しています。
[追記] 固定ページの大きい地図で出てくるマーカーは、投稿に付与した Lat_Long フィールドのものに限られてしまうという制約はそのままです。(地図表示以外の) 固定ページで Lat_Long フィールドを入れた場合、そのページで小さい地図は出ますが、地図ページではその地点のマーカーが出てきません。これはちょっと不可思議な動作になってしまうので、今後のバージョンでは直す予定です。

みなさんのプラグイン10選
トラックバック企画「WP2.5に入れるプラグイン10選」は順調に反応が増えているようです。わたしも投稿していますが、他の人の10選を見ると、なかなか興味深いものがあります。特に、常用しているプラグインが多い人の場合、「どれを落として何を残すか」という選択において、重視しているポイントが見えてくるんですよね。
注目すべきは、Akismet 以外のスパム対策プラグインも利用されている人がほとんどという点でしょう。Akismet はスパム対策という点では最強の部類に属するのですが、残念ながら多言語環境において誤認識が多いため、日本語ウェブログでは「Akismet だけに頼る」というのは困難なものがあります。
また、Ktai Style, Ktai Entry を初めとする携帯関連プラグインも利用者が多いです。さすがに Masayan さんところにトラックバックする方は圧倒的に Ktai Style の利用者が多いですが、いくつか Mobile Eye+ の方がおられます。サーバーが PHP5 未対応というかわいそうな人なのでしょう メール投稿系では MobG が出ていませんが、これは「プラグインではなくアドオンツール」という形態なので、リストアップされていないのだと思われます。
その他は、アクセス解析系が多く、カテゴリーやタグいじる系、画像系なども人気がありますね。runPHP, ExecPHP 系も利用者が多いのですが、不具合やセキュリティーホールの元になりますし、これに頼るのは実はスキルが低い証拠なので、早い目にやめることをおすすめします。WordPress に手慣れた人ならページテンプレートを作ったり、テーマの functions.php に自作関数を入れるか自作プラグインを作るでしょう。WordPress 2.5 以降なら自作ショートコードという手もあります。(追記: 意外とWP-PageNavi は利用者が少ないですね。見た目の使い勝手は上がるのですが、コードがいまいちで DB クエリーが増加するので、嫌がっている人が多いのかもしれません。←WordPress 2.5 対応版は DB クエリーは増えません)
わたしの場合、使っているプラグインがもともと少なく、自作ものは優先度が高いものが多いため、必然的にそれが残ります。他人のプラグインで落選したものは「Simple Tags」で、これは普段はオフにしていて、過去記事に大量にタグ付けするときだけ有効にする、という使い方をしているためです。
[追記 2008-07-15] トラバ受付が7月末まで延長され、中間集計が出ていました。基本的にはかなりバラけていますが、Google XML Sitemaps, Ktai Style, Simple Tags, wp-tegaki は5票以上獲得と人気があります。「使うべきでないプラグイン」を挙げられた方もおられますが、利便性とリスクを天秤にかけての判断なのでしょう。あくまで「自分にとって必要なプラグイン10選」であって、「おすすめプラグイン10選」じゃないので、それはそれでいいですよね。これが「おすすめプラグイン10選」であるならば、「使うべきでない……」をリストアップされると難儀なわけですが……。

WordPress を含む JP ドメイン
WordPress 公式サイトでは、「WordPress という商標を守るため、WordPress に関するサイトを始める場合は、ドメイン名に『WordPress』をという文字を含めないでほしい」というお願いがされています。かわりに「wp」という文字列が推奨されています。ただし、サブドメインに「WordPress」を含む場合は許可されています。
さて、JP ドメインの場合は、以下の3つが存在します。AC.JP, AD.JP, ED.JP, GO.JP, GR.JP, LG.JP, OR.JP は空いています。
WORDPRESS.JP はどうやら Otsukare さんが所有されているようです。今のところ A レコードの割り当てはないようで、ウェブサイトもありません。むしろ「悪意ある他人に取られないための防衛策として保有」されているような状況ですね。これは問題なさそうです。
WORDPRESS.NE.JP はデジタルスタジオのブログサービス Press9 で使えるドメインの1つです。すなわち、モロ「WordPress に関するサイト」です。サービス内容も WordPress.com とかぶるため、完全に商標侵害と思われます。
WORDPRESS.CO.JP は株式会社デジタルキューブのドメイン名です。オープンソースを利用したウェブ構築ソリューションの提供などをされているようで、業務素材として WordPress を使っているようです。それだけだと問題は少なそうなのですが、サイト名が「ビジネスワードプレス」というのはヤバそうです……。また、「WordPress を含むドメイン名を取るな」という声明が出た後 (2006年10月以降) にドメイン取得しているという点は悪質だと思われます。
後者2社を Automattic にチクったら、おそらく訴訟問題に発展するでしょう。特に、デジタルスタジオの方 (wordpress.ne.jp ドメイン) は確実に潰せそうです ;-);-) 個人的にはそれはそれでよいことだと思うんですが、wordpress.ne.jp ドメインでウェブログを公開している人がかわいそうなんですよね……。うーん。

使うべきでないプラグイン12選
トラックバック企画「WP2.5に入れるプラグイン10選」ですが、中間集計が始まったようなので、「使うべきでないプラグイン10選」を挙げてみたいと思います (追記: ヤバいものが増えてしまい、12選になりました) Masayan さんはこういうリストアップを好まないと思いますが、「やばいものは避けよう」という注意喚起としてあえて出してみます。もし、自身で使っているプラグインが該当していると不快になるかもしれませんが、セキュリティー向上のための情報ですので、気を悪くされないようにお願いします。
危険なプラグイン
以下のプラグインは、セキュリティーホールがある/ありそうなため、即座に使用停止した方がいいものです。
- WP MOBILE
- デジタルスタジオ製のモバイル対応プラグインです。当サイトでは度々危険性を告知しています。当初発見された脆弱性は塞がれていますが、まだ突破口があるのでないかと思われます。また、WordPress 2.3 以降には未対応なこと、IE, Firefox, Opera 以外の PC 向けブラウザー (Safari など) では閲覧できない、という重大な問題があります。(Safari ユーザーお断りサイトができてしまう
(追記: このプラグインがあまりにふがいないため、Ktai Style の開発を始めました。Ktai Style の普及のために WP MOBILE を叩いているのではありません)
- Plug ‘n’ Play Google Map
- Lightweight Google Maps の前身である Google 地図対応プラグインです。XSS 脆弱性があること (作者に報告しても梨のつぶて)、位置情報が多くなると PHP およびブラウザーのメモリエラーになること (16MB だと 1000個が厳しい) などの問題があります。(追記: こういう問題があるので、Plug ‘n’ Play Google Map の使用をあきらめて自作することにしたのです)
デッドリンクチェッカーまだベータ版なので、ここに挙げるのはかわいそうなのですが、2回も脆弱性を指摘したのにまだ同じ箇所が直ってないのは残念です。今後修正版が出るでしょうが、多くのテスターによる確認が済むまで使わない方が賢明です(作者がんばれ!!)
新しい WordPress に対応していないもの
以下のプラグインは最近の WordPress に対応していないものです。また、作者が開発を中止した/新バージョンが今後出ないと思われるものです。コードを自分でいじれる人ならば、改造して使ってもいいですが、プログラミングの知識がないならば、避ける方が無難です。
- SOMY Mobile Gate
- SOMY さんのメール投稿ツールです (厳密にはプラグインではありません)。残念ながら 2006 年秋頃に開発を中止されてしまいました。そのため、WordPress 2.3 以降の新しいカテゴリーテーブルには未対応となっています。後継の MobG を使いましょう。こちらはメンテされています。
- SOMY SpamBlock JP
- SOMY さんのスパム対策プラグインです。こちらも 2005年3月以降メンテナンスされていません。トラックバック・ピンバックの識別方法が古く、すべてコメントとして処理してしまっています。また、ブロック時の表示が文字化けしやすいこと (Shift_JIS 表示かつ HTTP ヘッダで Content-type 未指定)、コメント/トラックバックを必ずデータベースに一度保存させていること、どうにかがんばれば SQL インジェクションを起こせるかもしれないこと、将来
$tablecomments
が廃止されたら動かないこと、などいくつか問題などがあります。 - → WordPress 2.0 以前 (2.0 含む) でセキュリティー欠陥があることが判明しました。WordPress 2.0 以前ではインストール禁止です。
- SOMY IMG Collect
- SOMY Logined Publish
- SOMY さんのギャラリープラグインと、ログインユーザー判別プラグインです。どちらも、設計が古く将来の WordPress で動くかどうか不明です。なんとか WordPress 2.6 でも動きそうですが……。なお、WordPress 2.0 以前 (2.0 含む) でセキュリティー欠陥があることが判明したため、インストール禁止です。
アダルト広告が出てしまうもの
以下のプラグインは、取り扱い注意な機能を含むため、万人にはおすすめできないものです。設定を変更するか、「ポルノ広告表示機能」を了承の上使うのならば問題ありません。
- Mobile Eye+
- まおうさんの携帯対応プラグインです。Otsukare さん作の Mobile Eye がベースとなっていますが、大幅に変更されています。これも、当サイトで口が酸っぱくなるほど書いている通り、「画像や外部リンクをクリックしたときの URLGATE 画面には、ポルノ・出会い系広告が出る外部サービスがリストされる」という問題があります。しかも、この機能はデフォルトで ON にかかわらず、ドキュメントや配布サイトには記述されていません。このため、Mobile Eye+ をデフォルト設定で使うと、「アダルト広告に繋がる携帯サイト」ができあがってしまいます。
- URLGATE 機能がドキュメント化されているならば、「ポルノ広告が出てもいい」というユーザーだけが ON にすればいいのですが、そうでないため、取扱注意なプラグインとなっています。PHP5 未対応のため Ktai Style が使えない、という人は、ちょっと機能が低いですが「MobilePress」も検討してみてください (ただし、short_open_tag が off だと動きません)。
- (追記: WordPress 2.3 以降で「ブログのパーマリンク」が「使用しない」の設定の場合、標準 URL (Canonical URL) の仕組みにより、パーマリンクを使った URL に常にリダイレクトがかかってしまいます (ドコモ携帯ではダイアログが出ます)。また、前後ページのナビゲーションで URLGATE 経由になってしまいます。「使用する」に設定すればどちらも回避できます)
- (追記その2: Ktai Style 開発動機のもう1つの理由が、「Mobile Eye+ の挙動が好みと違う」ことでした (まおうさんも「かなり自分仕様な設計」と明言されています)。わたしには「ページ分割機能がない」「パケット節約が十分でない」「コメントとトラックバックを強制的に分離する」「スマイリー画像をそのまま出す機能がある」などは不満でした。このため「もっといいものが作れるんじゃないか」と考えて、携帯対応プラグインの開発を検討したのです。その後、「アダルト広告問題」が発覚したため、Mobile Eye+ も非難せざるを得なくなってしまいました。これは残念なことです)
お行儀が悪いもの
以下のプラグインは実装が凶悪で、他のプラグインに悪影響を出すものです。
- Events Calendar
- イベント表示プラグインです。標準のカレンダーの代替を提供します。しかし、プラグインの初期化段階で wp-includes/pluggable.php を
require
してしまうため、「プラグインが先に関数宣言することでオーバーライドできる」という pluggable.php の仕掛けを台無しにしてしまっています。WordPress コアの動作をまるで理解していない人が作っているわけで、これだと Extends から削除すべきぐらい酷いものですKtai Style とコンフリクトするから敵対視しているわけではありません……。
- All in One SEO Pack
- 人気のある SEO 増強プラグインです。しかし、タイトル書き換え機能が
ob_start()
を使うという凶悪な実装で、Ktai Style や Mobile Eye+ では title 要素が化けます (現在の Ktai Style では対策ずみ)。お行儀が悪い、という意味ではトラブルメーカーなわけで、初心者の方は避けた方が無難です。
セキュリティーを落とすもの
WordPress のセキュリティーを下げてしまうプラグインです。
- Exec-PHP
- runPHP
- どちらも、投稿に PHP コードを記述できるようにするプラグインです。テーマの改造では不可能な動的なサイトを作ることができます。しかし、複数の投稿者がいる場合、ユーザー登録が自由なサイトではセキュリティーがかなり落ちますので、使ってはなりません。ページテンプレートや自作関数/自作プラグイン/自作ショートコードを作れば、これらのプラグインに頼らなくても済みます。逆に言うと、これらのプラグインを使うということは、まだ初心者の域であると言えるかもしれません
閲覧者が困るもの
他人のプラグインばかり非難していると「何様やねん」と言われそうなので、自作のものをオチとして出しておきましょう。
- Ktai Style Shuffle (PC 向けバージョン)
- Ktai Style のエイプリルフール版です。なんと、アクセスの度に表示される投稿が変化するという「ランダム表示」を強要します。閲覧者が困惑すること必死です
強烈なジョークプラグインですので、真面目なサイトで使ってはいけません。
なお、ここに挙げられていないものが「安全」というわけではありません。プラグインは便利ではありますが、PHP コードそのものですので、すべてセキュリティーの脅威となり得ます。プラグイン紹介サイトでは、コードの確認をしていない場合もありますので、「人気サイトで紹介されているから大丈夫だろう」と思わないようにしてください。
[追記] もちろん、上記のリスクを承知の上で、ここに挙げたプラグインを使うのは自由です。また、問題点がさほど重大でない場合もありますので (設定で回避できる etc)、一概に全部がダメ、というわけではありません。本当にダメなのは、一番最初の2つだけです。
[さらに追記 2008-07-15 09:20] デッドリンクチェッカーは、作者さんが根本的な改良をされたようなので、削除しました。そのかわり、Events Calendar を追加しました。
[もっと追記 2008-07-17 01:15] SOMY プラグインの欠陥を追記して、他のプラグイン2つも追加しました。
[本文中に追記 2008-07-27 22:45] WP MOBILE, Plug ‘n’ Play GoogleMap と Mobile Eye+ と拙作プラグインの関係について、本文中に追記しました。既存品に問題や不満があったため代替品を作ったという経緯なので、それらを非難するのは必然なわけです……。
WordPress 2.6 出てしまった
さきほど、WordPress 2.6 がリリースされたようです。まだ trac にチケットが多数残っていたはずなのに、リリース予定日を優先したようですね。少なくとも、WP_CONTENT_DIR, WP_PLUGIN_DIR 定数の変更によるディレクトリー変更機能はまだ使いものにならないと思います
日本語版は数日かかるでしょうから、それが出てからテストサイトに入れて拙作プラグインの確認を行い、当サイトに適用するか検討してみます。
[追記] 残っていた 760件のチケットはすべて 2.9 (!) に延期されていました。これは報告者が各自重要度に応じて 2.7 とかに戻せということですよね? (Y/y)