まず最初に決める仕様としてディレクトリの構成と各ディレクトリに保存されるファイルのXMLフォーマットを決定します。

+--------------------------------------------------------------+
[ディレクトリ構成]

/main.swf : blog表示用Flash
/ymlist.xml : ログの存在する年と月を定義するxml
/2004/01 : 年フォルダの中に月フォルダを入れる
/2004/02/daylist.xml : その月の何日にログがあるかを定義するxml
/2004/02/01.fbd : 1日分のログデータ(拡張子はflash blog dataの略で.fbd)
/2004/02/02.fbd
/2004/02/03_01.fbd : 1日に複数のログがある場合は_の後に2桁の数字を入れる
/2004/02/03_02.fbd

[.fbdファイルのxml構造]
<blogdata>
 <date year="2004" month="12" day="01"/>
 <title>blogタイトル</title>
 <content><p>blogの内容</p></content>
</blogdata>

タグの解説
blogdata : 1エントリの区切りを設定
date : エントリが登録された日付を設定
title : エントリのタイトル
content : blogの内容。段落をpタグで区切り、リンク、太字、下線、文字色、画像指定はHTMLタグを使用。ただし画像指定のimgタグはFlash側で読み込んだ後に処理を加える。

[daylist.xmlの構造]
<daylist year="2004" mon="12">
 <dayfile day="01">01.fbd</dayfile>
 <dayfile day="02">02.fbd</dayfile>
 <dayfile day="03">03.fbd</dayfile>
 <dayfile day="04">04.fbd</dayfile>
 <dayfile day="05">05_01.fbd</dayfile>
 <dayfile day="05">05_02.fbd</dayfile>
</daylist>

タグの解説
daylist : その月の区切りを設定
 (year = 年 , mon = 月)
dayfile : ログの存在する日付の設定
 (day = 日 , 内容にファイル名)

[ymlist.xmlの構造]
<ymlist year="2004">
 <month>12</month>
 <month>11</month>
 <month>10</month>
 <month>09</month>
 <month>08</month>
</ymlist>
<ymlist year="2003">
 <month>12</month>
</ymlist>

タグの解説
ymlist : 年の区切りを設定
month : ログの存在する月を設定
+--------------------------------------------------------------+

現時点で想定している作り方に基づいて決めましたが、実際にFlashでオーサリングを始めると仕様を変更しなければならないことが必ず起きると思います。その時はこちらのエントリもその都度変更する予定です。
blogといえば静的なHTMLで構成されるものがほとんどですが、中でもFlashで構築されたものは皆無です。実際googleで探してみたところ「blog || 30k2.com」(http://blog.30k2.com/)というサイトを発見しました。なかなかかっこいいサイトで、コメント機能も実装していてすごいの一言。ただやはりトラックバック機能の実装は難しいようです。

1年ほど前に私もFlashで日記サイトを作っていたのですが、デザインや操作性がイマイチしっくり来ず結局は止めてしまいました。しかし今回もう一度しっかりとしたものを作ってその過程をここに記録していこうかと思います。

まず最初に作るFlashの大前提として「CGIを使用しない」ようにします。これは.MacではCGIを使用できないと言うことと、将来CGIを使えるようになった場合、CGIを使用しないことでごまかしていた部分をCGI化させれば解決できるからです。そのため、コメントシステムは使用できませんがまずはblogっぽいサイトを作ることが目標なのでそれは今後のバージョンアップで対応するつもり。

そして作成する過程は全てWebで公開してソースの.flaファイルもダウンロードできるようにする予定です。たぶんActionScriptは非常に汚いものになると思いますが・・・。

ちなみにFlashのバージョンはMX 2004ではなく一つ前のMXになります。これは自分がMX 2004を持っていないことと、MX 2004にバージョンアップする必要がないと思われるからです。ただし、次のバージョンが出た場合はバージョンアップするかもしれません。