トップページにつけた、百人一首を1日に1句表示してくれる機能は、自分でもなかなか気に入っている。6年ほど前に16bitコンピュータで百人一首を題材にしたゲームを作ったほどで、俳句や和歌などは意味は理解しないでも毛嫌いするほどでもないので、自分のサイトだけどついつい見にいってしまう。1日ごとに句を替える機能を付けたのがよかったみたい。
27日の続き。
データを1ヶ月単位で管理すると限定するなら、スレッドのIDはyyyymmdd_nではなくyyyymm_n(年月_番号)にした方がよさそう。yyyymmとnの間に_(アンダーバー)を入れるのは、その方が人間が見て、yyyymmが年月だと推測しやすいと思うから。
どれがいいかな。
作ってて気付いたんだけど、データを1ヶ月ごとに管理することのメリットは、ファイル名から内容を知ることができるので、ファイルアクセスを減らせるということ。これまでの掲示板だと、効率をよくするためにスレッドのタイトルなどの情報は別のファイルにまとめているものが多いけれど、データファイル名とデータ内容を対応させることで、個別にインデックスファイルを設けなくてもよくなる。
たとえば、トップページでは最新の書き込みを表示するわけだけど、タイトルだけでなく本文も表示するならデータファイルを読み込む必要があるわけだし。スレッドのレスを全部表示する場合も同様。過去ログのスレッドタイトルの一覧の表示も、月ごとに表示するので、これもそのファイルだけを読み込めばよいということになる。
データファイルがシンプルになると、エディタなどで直接編集したりするときにも便利だし。
タイトル一覧をツリー形式で表示すると、誰がレスをしているのかが一目で分かるというメリットがある。これはやっぱり便利かもしれないなぁ。これを使うなら、レスごとにタイトルをつけられるようにするか、それともレスの本文の文頭から数文字ほど抜粋するのがいいかも。
なので、データの汎用性を考えると、レスごとのタイトルのフィールドを設けておいた方がいいかもしれない。
SSIを使って実現できそう。でも、SSIだと実行時のカレントディレクトリが呼び出し元のHTMLの場所になるみたいだから、外部ファイルとかを扱いにくいんだよな…。設定ファイルを読み込むのも一苦労。