2004年01月14日 (水)

新プラグインを加えて完全版?うにょうにょ Read More 提供開始(1/2)

ここ数日、うにょうにょ Read More を題材に i-mode 用ページの生成やカテゴリ毎の RSS Feed を念頭に置いて開発した新プラグイン群を提供開始します。

まずはそのプラグインの効果や意図について説明し、導入情報は後ほどエントリします。また、このエントリをアップした後に、公開ファイル置き場である iDisk の Public フォルダーを更新します。

今回新しく開発したのは
BLOGPAGE_ACTION.plugin
ブロッグページの要素を読み取り、テンプレートファイルから新しいページを作ったり、書き戻したりするプラグイン。
CATEGORYPAGE_ACTION.plugin
カテゴリページの要素を読み取り、テンプレートファイルから新しいページを作ったり、書き戻したり、カテゴリのデータを蓄積して後で一気に利用するプラグイン。

です。また、
ENTRYPAGE_ACTION.plugin
エントリページの要素を読み取り、テンプレートファイルから新しいページを作ったり、書き戻したり、カテゴリのデータを蓄積して後で一気に利用するプラグイン。

にも改良を加えました。

この三つのプラグインのデフォルトの設定では、現段階で究極と私が考える「うにょうにょ Read More」を実現するための設定になっています。今までの各種実装と比較してどこが究極なのかについて説明しましょう。
  • エントリの内容のロード量を最小に留めました。
    今までの実装ではエントリの内容に含まれている大きな画像やムービーファイルまでブロッグページのロード時に一緒にロードされてしまいます。しかし、この実装では HTML だけが読み込まれ実際に表示する段階でこれらのファイルがロードされます。
  • iframe タグを用いないのでエントリの内容を表示させたときにスクロールバーが付きません。
  • ブロッグページやカテゴリページに現在リストされているエントリについてだけエントリの内容のデータがファイルに書き込まれる(エントリページは別)ので、サーバのスペース消費量はこれらのページでエントリの内容を表示させるように iBlog を設定した場合とほぼ同等です。
  • XHTML として正しく、(私のわかる範囲ですが)アクセシビリティ指針にも適合しています。
  • 一瞬エントリの内容が見えることはありません。
  • エントリの内容を隠したときに、エントリの先頭に表示しているところを移動するのか、何も操作しないかが選択できます。
    見にきた方がリンクをはったりブックマークをする際に URL を気にせずできるようにすることを重視する人と、見にきた人が見ているポイントの固定化を重視する人それぞれ好みによって機能を選択できます。
  • スタイルシートをサポートしていないブラウザでも JavaScript をしっかりサポートしていれば機能します。
  • JavaScript をサポートしていなかったり OFF にしているブラウザの場合は関連部分は全く表示されません。
    中途半端に展開させるためのリンクが表示されることがないということです。このようなブラウザのサポートには noscript タグが利用できますし、エントリへの固定リンクを別途提供しているのでしたらそれすら不要でしょう。
  • 表示させたり隠したりするためのリンク文字列などの内容(「続きを表示>>」とか「<<続きを隠す」)を簡単にカスタマイズできます。
  • エントリの内容を隠すときのリンクの位置を、エントリの内容の上に持ってくるのか下に持ってくるのかを簡単に選択できます。
  • 表示させたり隠したりするためのリンク文字列などの内容(「続きを表示>>」とか「<<続きを隠す」)とエントリの内容との間に <br /> を追加するかしないかを簡単に選択できます。

私が知っている今までの実装の(補助ツールが必要であること以外の)全ての問題点を克服したつもりです。例は、例によって Blog「僕は見ていた」を見てください。

さて、最初の方で示した各プラグインの役割の説明をもう一度読んでみてください。これらのプラグインはうにょうにょ Read More を実装するためだけに開発したわけではありません。元々、i-mode など携帯電話用のページを作成したり、カテゴリ毎の RSS Feed を生成するために、iBlog のデータを自由に取り出せるようにしたいという欲求がありました。しかし、iBlog の生データはバイナリファイルだったり、タイトル、概要、内容と分かれた XHTML ファイルがあっても日付などの情報が欠落していたりで、十分なデータを取り出すためには生成されたページをアナライズする必要がありました。これを行うためのプラグイン群なのです。

うにょうにょ Read More を題材にすることを通して、プラグインに必要な機能を想像しているだけではわかりにくい注意点が洗い出されました。また、これは私の設計ポリシーなのですが、可能な限りプログラムの動作は設定においやり、設定を読んで柔軟な動作をするものをと心掛けています。うにょうにょ Read More を題材にすることを通して、元々の欲求に含まれていないけれど動作を選択する上で必要な設定事項や設定方法をより汎用的に検討することもできました。

プラグインのソースを開いてみるとわかりますが、これら設定については親切ではありませんが必要な説明をコメントとして書いてあります。これらのプラグインを利用することで、あなたのアイデアを少ない労力で実装することができるでしょう。また、あなたのテンプレートのカスタマイズがデフォルトの設定に合わないときも、プログラムをいじるのではなく設定をいじることによって合わせることが可能になっています。

# ですます調の方が書くの楽だなぁ。どうしてだろう?

Posted: 03:46    | Comment | Trackback


以下、類似エントリです。