昨日新たに定義した関数が実はバグってたって話したんですが、まぁ他に書くことない・・・・・・こともないんですが、とりあえずどう解決したか書きます。
$ymd=array($y,$m,$d,$h);
まず、こんな変数を新たに用意します。y,m,dという変数は年月日、hという変数はトップページと日記ログの階層差を表現するヘッダです。
トップページから参照している時はここは空で、日記ログから参照している時は/Diary/...みたいな値が入ってます。baseタグの代わりですね。
diary_link($ymd,"-1");
もともとヘッダー情報だけ引数として与えてたのですが、新たに年月日の情報も含んだ配列としてdiary_linkという関数に渡します。
で、後は引数に"-"を含んでいた場合、$ymdから該当の日付を計算し、処理できる形に戻してから以前の関数と同様に処理していけばいいわけですね。
diary_link($ymd,"20150620");
従来通り、こう書いても途中の処理がカットされるだけなので機能します。
とまぁ、ごちゃごちゃと書きましたが、対処法は結構シンプルにまとめた形になります。
配列って超便利。(・∀・)
機能の日記でごちゃごちゃと変数を宣言してますけど、年月日の情報なんてわざわざ変数を分けなくても配列で良かったなぁと設計を反省してたりします。
配列に押し込めるものは全部配列に押し込んだ方が美しかったですね。もう今さらどうにもなりませんけど・・・・・・。
作りなおすのめんどくさい・・・・・・。
この日記システムって僕的にはHeTeMuLu Creatorと組み合わせることですごい使いやすいものになると思ってるんですけど、フレームワークとして欲しいって人居たりするんですかね。
配布する予定はないんですけど、ブログシステムとしてもっと一般的なものに作り変えて配布する、ってのも面白そうだと思いますね。
まぁ、となるとWordPressに対抗できるシステムでなくてはいけないのですが、うーん。
SQLを使わずに、つまり無駄なものを剃り落としたシステム、であればいいものが作れたりするかも知れませんね。
あと、WordPressはちょっと肥大化しているらしいので、その辺をスッキリしたシステムが作れたらいいかもですね。まぁ、当分そんなもの作る予定はないですけどね。
うちの日記に足りないものっていえば
検索とか
タグって機能ですかね。
ぶっちゃけこの辺はテキストベースの限界であって、検索はもうGoogleに頼る他ありませんし、タグなんかつけると管理が大変です。それに、需要がいまいち見込めませんしね。
ファイルの全件検索なんてやってられませんしね。データベースがないとキツいっす。
一応、ページネーション的に動作させるのであれば、多少現実的にはなるかなぁとか思ったりします。該当数見つかればそこで検索を打ち切ればいいですからね。
自動でインデックスとか作れてるのならまた話は別なんですけどね・・・・・・。うーん。
システムを考えるのって難しい話なんですわ。