XML属性
<?xml version="1.0" encoding="UTF-8"?> <diary> <article> <no> 記事番号 </no> <date> 年-月-日 </date> <title> 記事タイトル </title> <category> カテゴリのユニークID </category> <contents> 記事の中身 </contents> <imagenum> 記事内の画像の数 </imageum> <comments> <comment> <username>コメントを書いた人</username> <timestamp>コメントを書いたエポック秒</timestamp> <contents> コメントの内容 </contents> </comment> <comment> <username>コメントを書いた人</username> <timestamp>コメントを書いたエポック秒</timestamp> <contents> コメントの内容 </contents> </comment> 何個でもできる。でも、コメント自体には対応するつもりはない。 </comments> </article> </diary>
最初に仕様をはっきりとしておかないと、後で、えらい目にあう。
一からブログシステムを作り始めて、ついにここまで来たか。
と、感無量である。
ここは一番ブログシステムの核となるところなので、きっちり考えていこう。
徒然なるままに仕様を書いていこう。後に次々足していこう
形式 | XML。CSVもサポートしたい。時期バージョンで、Moovable Type変換機能も実装したい。PHP4対応 simpleXMLは使用不可 |
---|---|
漢字コード | 入力 UTF-8 出力 Shift-JISにする OSに依存しないように、実装する mb_stringを使うことに躊躇しない |
主キー | 記事番号に対応させる。日にちで分けない。 |
記事 | いち更新したのか、それぞれの記事に表示させる |
画像 | 画像は一つに記事に対して3枚までアップロードできることとする。 画像の枚数によって、スタイルシートを変更し、画像をGDライブラリで縮小させることとする。GDライブラリによる画像圧縮は、最大横幅が640 or 320までとする。それぞれの画像に対して、a hrefリンクを target属性なしで、張ること。 |
XMLで必要な属性 | 下に記述する |
許可するHTMLタグ | javascriptは例外なく対応しない。ただし、Google MAP APIは、実装できるように、対応する。他のHTMLタグは、allow,deny方式ではなく、deny,allow方式で対応する。現在のところ、<b><a href target><i><u>までは対応している。<div>のスタイルシートだけは対応させてもよいことにしようかしまいか、悩み中。 |
画像DB | 画像自体は、DBフォルダに、記事番号ごとに、画像を保存するようにすると、XMLに、リンク先を入力しなくてよいので、そのようにしたい。しかしそうすると、一つのディレクトリの中の最大ファイル数は、65535個だから、どうしようか・・。 |