2004年01月18日 (日)

エントリ一覧用 JavaScript を更新

最近 N か月の月毎のエントリリスト」で紹介した ENTRIES_JS.plugin の応用例で使用する JavaScript をグレードアップしました。これにより次のことができるようになります。
  • blog が開始した月からの月毎のエントリ一覧へのリンクをリストアップする。
  • カテゴリページとエントリページでの月毎のエントリ一覧へのリンクをそのカテゴリ限定の一覧にする。
  • エントリ一覧のページ本体である ListEntry.html または ListEntryNoHalo.html のファイル名を指定する。

今回はこの blog 自身にも組み込んであります。

この機能の導入方法は「最近 N か月の月毎のエントリリスト」での導入方法とほぼ同じです。既に私の iDisk の Public フォルダーから CommonLib.js をダウンロードしている方、あるいは CommonLib_en.js を CommonLib.js としてダウンロードした方は再度ダウンロードしてください。新しいものを以前の設定で使用しても問題なく以前の機能を果たすようになってい(るつもりでい)ます。

新しい CommonLib.js の新機能を利用するための設定方法について説明します。いずれも最近 N か月のエントリ一覧へのリンクのために iBlog のナビゲーションエディタでカスタマイズした部分を書き換えます。以前のエントリでは次のように例を書いた部分です。
<hr noshade="noshade" size="1" width="50%" />
最近 3 か月のエントリ
<div style="text-align: center;">
    <script type="text/javascript">WriteMonthryArchiveLinks(3, '<$BlogBaseURL$>');</script>
</div>

以下、
  1. blog が開始した月からの月毎のエントリ一覧へのリンクをリストアップする機能
  2. カテゴリページとエントリページでの月毎のエントリ一覧へのリンクをそのカテゴリ限定の一覧にする

の組み合わせ毎に当該部分の記述例を列挙します。斜体+赤い字の部分はあなた自身による設定項目です。

A のみ
<hr noshade="noshade" size="1" width="50%" />
月毎のエントリ一覧
<div style="text-align: center;">
    <script type="text/javascript">
        BlogStartMonth = new Date(blogが開始した年, blogが開始した月-1, 1);
        WriteMonthryArchiveLinks(-1, '<$BlogBaseURL$>', false);
    </script>
</div>
「blogが開始した年」は例えば 2003 と西暦 4 桁で書いてください。「blogが開始した月」は 1 月なら 1 と序数で書いてください。
B のみ
<hr noshade="noshade" size="1" width="50%" />
最近 N か月のエントリ
<div style="text-align: center;">
    <script type="text/javascript">
        WriteMonthryArchiveLinks(N, '<$BlogBaseURL$>', true);
    </script>
</div>
「N」は今月も含めて過去何か月分の月毎のエントリ一覧へのリンクを表示するかを表す数字です。3 ならば今月、先月、先々月の三つへのリンクを表示します。
A と B の両方
<hr noshade="noshade" size="1" width="50%" />
月毎のエントリ一覧
<div style="text-align: center;">
    <script type="text/javascript">
        BlogStartMonth = new Date(blogが開始した年, blogが開始した月-1, 1);
        WriteMonthryArchiveLinks(-1, '<$BlogBaseURL$>', true);
    </script>
</div>
「blogが開始した年」は例えば 2003 と西暦 4 桁で書いてください。「blogが開始した月」は 1 月なら 1 と序数で書いてください。
従来のまま
<hr noshade="noshade" size="1" width="50%" />
最近 N か月のエントリ
<div style="text-align: center;">
    <script type="text/javascript">
        WriteMonthryArchiveLinks(N, '<$BlogBaseURL$>', false);
    </script>
</div>
「N」は今月も含めて過去何か月分の月毎のエントリ一覧へのリンクを表示するかを表す数字です。3 ならば今月、先月、先々月の三つへのリンクを表示します。

もちろん月毎のエントリ一覧へのリンク群が何であるかを読者にインストラクションするための「最近 N か月のエントリ」とか「月毎のエントリ一覧」などの文言はあなたのセンスでもっとよい文言に変えても差し支えありません。また、この例では div 要素の style 属性でリンク群をセンタリングしていますが、必要があればページのデザインに合わせて style をカスタマイズしてください。そしてどれも hr タグで線を引いていますが、もちろん必要に応じて取り払ったりカスタマイズしてください。

もう一つの機能である ListEntry.html または ListEntryNoHalo.html のファイル名を指定する方法について説明します。上記の例ではいずれもデフォルトの ListEntry.html をエントリ一覧ページのとして使用するようになっています。私の iDisk の Public フォルダーにある ListEntry.html をそのままファイル名を変えずに利用している方は以下は必要ありません。ListEntryNoHalo.html やオリジナルのファイル名を変更して使用する方は以下のようにしてください。

例として ListEntryNoHalo.html を使用する場合です。他のファイル名のときは ListEntryNoHalo.html の部分がそのファイル名になります。
ListEntryHTML = 'ListEntryNoHalo.html';
WriteMonthryArchiveLinks(......);

つまり WriteMonthryArchiveLinks の前に ListEntryHTML という JavaScript 変数を設定するのです。この変数のデフォルト値が 'ListEntry.html' になっています。

Posted: 21:42    | Comment | Trackback


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