パーマリンクタグの投稿

2008-03-31
晴れ

WordPress 2.5 に移行しました

ゆりこ による 21:38:35 の投稿
カテゴリー: WordPressハック,更新履歴
タグ: , ,

長らく PHP+MySQL を利用した独自ウェブログシステムで運営していた Yuriko.Net メインサイトですが、ついに WordPress に移行いたしました。できるだけ従来の見た目になるようにしましたが、所々表示が変わっています。

Yuriko.Net は、1997年のサイトオープン以来、しばらく手書き HTML で作成していました。2000年1月からは、「はいぱー日記システム」を使いましたが、9月ごろに書くのをやめてしまいました。それ以来、2004年8月まで、まったく更新せず放置状態でした。

2004年8月に、手書き HTML ながら見た目をウェブログ風にして運営再開しました。月別アーカイブを1つの HTML として手書きし、フロントページや各記事などを perl スクリプトで静的生成させるシステムを自作しました。

しかし、静的生成システムではコメント・トラックバック機能がないため、PHP+MySQL による独自ウェブログシステムを構築して2006年8月から運用開始しました。当然ながら、WordPress, P-BLOG, Nucleus などのシステムも検討しましたが、「http://www.yuriko.net/arc/2008/03/31a」のようなパーマリンク体系を構築できなかったため、すべて見送って、自作システムとしたものです。自作システムを作るのは、それなりに楽しかったのですが、携帯対応がなかなかできませんでした (perl での静的生成時代は、携帯ページも同時に生成していたのでサービスダウン)。

その反面、WordPress 携帯対応プラグイン Ktai Style がすばらしい仕上りになったため、これを Yuriko.Net で使いたくなりました。また、WordPress の内部構造にも詳しくなったため、「ひょっとすると、ウチのパーマリンク体系を WordPress で使えるんではないか」と考えました。密かに研究した結果、どうにか実現する方法を開発しまして、ついに実現の運びとなったものです。折りしも WordPress 2.5 がリリースされ、表示速度も従来の Yuriko.Net と遜色なくなったこともうれしいことです。

この記事は便宜上従来の URL 体系にしますが、あす 4月1日からは、「http://www.yuriko.net/arc/2008/04/01/SLUG/」のような一般的なパーマリンクにする予定です。今後ともよろしくお願いします。なお、WordPress ネタを扱うウェブログが、WordPress *ではない* システムで動いているのは一興だったのですが、それが解消されてしまうのは、少し残念です!?

[追記 2008-04-02] 個別記事 (シングルポスト) において、カレンダーが投稿日のものではなく、閲覧している日のものになるという不具合があります (この記事も該当)。get_calender() では、どの日のカレンダーを出すかをグローバル変数 $m, $monthnum, $year で制御しますが、これらが正しくセットされていないようです。早めに直したいと思います。

[追記 2008-04-03] なんとか修正しました。WordPress の仕様で、記事番号でクエリーした場合は、$m, $monthnum, $year がセットされないのでした (なので、http://example.jp/?p=1234 のようなパーマリンクの場合、カレンダーは記事のある年月ではなく、閲覧日のものになる)。そこで、むりやり、年月を入れたクエリーを発行させることにしました (query_posts("p=$id&year=$year&monthnum=$monthnum");)。早い目に、この「パーマリンクをごっそり変えてしまうプラグイン」を公開したいと思います。

2008-03-22
晴れ

Habari はパーマリンクの扱いがいまいち→スゴイかも

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

Masayan さんが「Habari をインストール」された記事に触発され、ウチでもローカルの MacBook にインストールしてみました。Mac OS X なので Apache はインストールずみ、PHP5, MySQL は別途入っていて、WordPress 環境のテスト環境としてバリバリ使っています。

しかしながら、結果はがっかりでした。それは、パーマリンクの扱いが WordPress 同様、あまり自由ではないことです。URL に使う post slug は全投稿でユニークである必要があるため、Yuriko.Net メインサイトのような yyyy/mm/ddX といった型式を実現することはできません (X は日付ごとに a,b,c,.. となる連番なので post slug では代用できない)。

しかも、ディレクトリーなのに末尾のスラッシュを抜いてしまう悪い癖も WordPress 譲りです。わたしは「http://www.yuriko.net/travel/」と表記したいのに、WordPress は「http://www.yuriko.net/travel」という URL をそこらじゅうで使います……。

ここが独自ウェブログエンジンなのは、従来の URI 体系を維持するためなのです。最近開発が止まっていますが、そろそろ機能アップした方がいいかな〜〜。携帯対応は Ktai Style のコードをパクってみるか。

[追記] 設定画面では、パーマリンク体系をいじる箇所がなかったのですが、ドキュメントには「Rewrite Tutorial」というのがあって、リクエスト URL を正規表現で解析して処理できるようですよ!! これはかなりスゴいかも。