[plugin] にっきプラグイン
wifky で「にっき」を書く場合の支援プラグインです。 開発者のにっきや、当サイトの FrontPage のニュースは、 これを利用して書いています。
具体的には「(yyyy.mm.dd)」という形式で始まるページを 「にっきページ」とみなし、これらを効果的に閲覧する、下記の仕組みを設けます。
- 最新/最古の日記 n 回分の表示機能
- 前の日記・次の日記のメニューバーからのリンク
- RSS 出力
- リファラー記録・表示
当然ながら、専用ツール(ブログ・にっきツール)に 勝るはずもありませんので、その点、ご了承ください。
インストール
ダウンロードページより、 アーカイブファイル nikky-X.XX.X.zip をダウンロードしてください。 これを展開して、nikky.pl をワークディレクトリ(wifky.dat)に置いてください。その後、ナビゲーションメニューの Tools を押下すると、 設定画面に下記のような項目が現れます。
Author | RSS に出力する著者名(省略時はタイトルを出力) |
Print diary as FrontPage | チェックすると、FrontPage のかわりに最新日記をデフォルト表示する。 |
Days of top diary | (アクションプラグインで表示する場合の)表示日数 |
1-section to 1-rss-item | チェックすると、RSS に出力するアイテムが、ページ内のセクション単位となる。 |
RSS description | RSS に出力される、サイトの説明 |
insert hh:mm into title | チェックすると、新ページ作成の際のデフォルトタイトルに時刻(hh:mm)が 付加される。 |
Symbol of start day link | 最古の日記へのリンクシンボル(デフォルトは「|」) |
Symbol of previous month link | 前月を示すリンク文字列を指定します(デフォルトは「<<」) |
Symbol of previous day link | 前日を示すリンク文字列を指定します(デフォルトは「 >」) |
Symbol of next day link | 翌日を示すリンク文字列を指定します(デフォルトは「< 」) |
Symbol of next month link | 翌月を示すリンク文字列を指定します(デフォルトは「>>」) |
Symbol of end day link | 最新の日記へのリンクシンボル(デフォルトは「|」) |
Print month with English | チェックすると、月を英語表記します(January…) |
機能
新規にっき作成
新規ページ作成時([New]リンク押下時)、ページ名のテキストボックスに、 その日の日付を (YYYY.MM.DD) 形式でデフォルト値として挿入します。 にっきを編集する場合、そのままか、標題を追記します。
設定「insert hh:mm into title」にチェックを入れている時は、 時刻 hh:mm も挿入します。
にっき以外のページを作るのであれば、挿入された日付を削除して、 目的のページ名を入力してください。
最新日記の表示
二種類の方法があります。
アクションプラグイン方式
「Print diary as FrontPage」を On にして、FrontPage にアクセスするか *1、 ((a_nikky 適当な標題文字列)) で生成される URL「http://…/wifky.pl?a=nikky」へアクセスする ことにより、最新3回分の日記を新しいものより順に表示します。
各日記の末尾には、各々「Footer」が付きます。 コメントや(後述の)リファラ表示のプラグインを Footer ページ内に配置すると、ブログっぽくなります。
この方式で表示させる時の日数は、設定「Days of top diary」で設定します。
リンク元表示
((referer 排他キーワード…))
アクセスしてきた時の参照元 URL を記録・表示します。 通常、Footer に記述します。
1ページ内に何回でも記述できますが、カウントが更新されるのは最初のものだけで、 あとは表示するだけとなります。
にっきページ限定リンク元表示
((nikky_referer 排他キーワード…))
(yyyy.mm.dd) 形式で始まるページでしか機能しない点を除けば、((referer)) と同じです。
Footer 内に置いた場合、((lastdiary 日数)) や a=nikky でインクルードされた各日の末尾では機能しますが、インクルード元のページ自身の末尾では、そのページが(yyyy.mm.dd)という形式で始まらない限り、機能しません。
にっきページ限定コメント表示
((nikky_comment 排他キーワード…))
(yyyy.mm.dd) 形式で始まるページでしか機能しない点を除けば、((comment)) と同じです。
Footer 内に置いた場合、((lastdiary 日数)) や a=nikky でインクルードされた各日の末尾では機能しますが、インクルード元のページ自身の末尾では、そのページが(yyyy.mm.dd)という形式で始まらない限り、機能しません。
RSS 出力機能
http://…/wifky.pl?a=rss
で、RSS が出力されます。 このリンクは、署名表示部に追加されます。
- RSS 出力は、1ページ=1アイテムか、 1セクション(1ページを大見出しで分割したもの)かを選択できます。 セクション単位にする場合、設定の『1-section to 1-rss-item』 にチェックを入れてください。
- RSS に出力する著者名・サイトの説明は、 設定「Author」「RSS Description」に記述します。 空の場合、ページタイトルが変わりに出力されます。
- ((read_more)) 以降は RSS に出力されません。
CGI 引数拡張
新たな記事指定の引数として、?date=YYYYMMDD というものを追加します (YYYY:西暦,MM:月,DD:日)。 これは、「(YYYY.MM.DD)」で始まる記事を連結して出力するものです。
カレンダー出力機能
表示している日記の日付か、あるいは、現在の月のカレンダーを表示します。
((calender)) … テーブル型の場合 ((calender f)) … フラット型の場合
CSS 定義は下記とおりです。
- table.calender / div.calender_flat
- カレンダー全体
- table.calender caption / div.calender_flag span.calender_header
- カレンダーのヘッダ
- table.calender td / div.calender.span
- カレンダー中の各日付部分
- td.Today / span.Today
- 今日の日付、あるいは、現在表示中の日付
- td.Sun…td.Sat / span.Sun … span.Sat
- 各曜日の日の日付
リンク用コマンド
次のようなインラインコマンドが用意されます。
((nextday)) | 翌日へのリンクを表示します。 |
((prevday)) | 前日へのリンクを表示します。 |
((nextmonth)) | 翌月へのリンクを表示します。 |
((prevmonth)) | 前月へのリンクを表示します。 |
更新履歴
0.8.0
- RSS 出力で、著者名 < author>/<dc:creator>・ 作成日時 <dc:date> を出力するようにした。 (著者名は、設定画面より任意名を設定)
- [RSS] マークを、フッタに移動した。
- JavaScript によるメニュー拡張を廃止した。
- [New] ボタンの押下時の挙動を、0.5 相当に戻した。
- tDiary 互換の ?date=… 型リンクをなるべく使用しないようにした。
0.8.2
- 本体 0.81 対応
wifky 0.81 で、リンクアンカーを含む標題が RSS 上で化けるようになってしまいました。 これは、wifky 本体側での span.adminmenu 対応のため、 リンクアンカータグをエンコード処理したためです。 (なぜ、そのような処理が必要だったかというと、書きだすと長くなります汗)
この対応のため、タイトル展開時にデコードを行うようにしました。
0.11.0
- (yyyy.mm.dd) で始まるページでしか機能しない ((nikky_comment)) , ((nikky_referer)) を追加 (機能は ((comment)),((referer)) と全く同じ )
0.11.1
- CGIパラメータ date=yyyymmdd が効かなくなっていたのを修正
- 「)」移行に文字列があっても、date パラメータで指定できるようになった(ただし、同一日時に複数あった場合は、どれか一つになる:特定不能)
- スクリプト中の不要な空行・末尾の空白を削除
0.12.0
- RSS に出力する標題が「ページ名 - 大見出し」となっていたのを「大見出し」だけとした。大見出しが無い部分には、ページ名だけが標題となるのは従来どおり
- スクリプト中のタブを空白にコンバートした。
0.15.0
- date=YYYYMMDD を (YYYY.MM.DD)* にマッチする 全ての記事を連結したものを返すコマンドとした。
- カレンダーの基準日時を、date 引数からも得るようにした。
- カレンダーのリンク先を date 引数で指定するようにした。
0.17.0
- CGI引数 a=new を、そのまま、新規にっきページ作成とした。 それに伴い a=newdiary は廃止。
- 前月へのリンクコマンド ((prevmonth))追加
- 翌月へのリンクコマンド ((nextmonth))追加
- カレンダーのヘッダに前月・翌月へのアンカーの設置
- カレンダーのヘッダの年月表示で、英名の月表示だけでなく、 数字による月表記も出来るようにした。
- 翌日・前日・翌月・前月のリンクシンボルの変更機能(Tools)
0.18.0
-
NoGood 氏による nikky_plus.pl のコードを統合。
- 横一列なフラットカレンダー ((calender f))
- calender のキャプションの左右両端に最新・最古の日記へのリンクを追加
- カレンダーから翌日・前日リンクを削除(リンクが多過ぎるため)
- メニューバーから翌月・前月リンク等を削除(リンクが多過ぎるため)
- 本文ファイルが存在しない時、そのページは表示しないようにした(amazon.pl 向け対応)
- RSS の description を設定で定義できるようにした。
- 新規にっきのタイトルに時刻も挿入できるようにした。
- RSS 出力の charset を wifky 本体のものと合わせるようにした。
以降は、 ダウンロードページの変更履歴参照のこと
*1p=FrontPage という指定を明示的に入れてはいけません
|