countdown.inc.php†
サマリ | カウントダウン(あと何日?) |
リビジョン | 1.6 |
対応バージョン | 1.4 |
投稿者 | nao-pon |
投稿日 | |
- ブロック要素
- ありません
- インライン要素
- &countdown([西暦],月,日){[タイトル]};
西暦:年を4桁で指定
- 西暦を省略すると毎年の指定日までとなります。(西暦の後のカンマは省略できません)
月:1-12
日:1-31
- 日は、第何?曜日も指定できます。曜日に続けて週目を指定。
- 例:第2火曜日 tue2 又は 火2
- 日本語表記:日,月,火,水,木,金,土 (ja.lng の $_msg_week で指定した曜日)
- 英語表記:sun,mon,tue,wed,thu,fri,sat
タイトル:タイトルを指定すると
- [タイトル]まであと[x]日 (ja)
- [x]day(s) to [title] (en)
��表示されます。(省略可)
必要条件†
HPのカレンダー拡張モジュールが必須です。
��rev. 1.41.5 で拡張モジュールのない環境でも動くようにしてみた。(つもり)
pk さんのコードを流用させていただきました。
ダウンロード†
countdown.inc.php
countdown.inc.php.1.4 ← rev. 1.5 です。(ファイル名紛らわしいけど)
countdown.inc.php.1.6
使用例†
なおきの部屋:PukiWikiMod/自作プラグイン/countdown
コメント†
- 名無しさん
rev1.4でも、拡張モジュールが組み込まれていないとエラーになりました。
- merlin
rev1.3で動かなかったものがPHP-4.3.2と一つ前のCVSでは動いています。ここ。 いつ頃のPukiWikiかとPHPのバージョンなどをお教えいただけませんか?
- nao-pon
このページに添付してある「countdown.inc.php.1.4」でエラーが出るということですよね。私のミスでこれは、rev. 1.5 です。
まあ、それは置いておいて、エラーメッセージは、なにが出ますでしょうか?
- reimy
バグ報告。countdownプラグインの$titleにインライン要素が記述できない。
&countdown(2003,11,18){[[日本シリーズ:http://www.npb.or.jp/nippons/index.html]]};
&countdown(,12,8){[[れいみぃ]]の誕生日};
&countdown(2003,11,11){&color(crimson){ファーム日本選手権};};
上記の表示例はなおきの部屋:PukiWikiMod/自作プラグイン/countdownのコメントに。
68行目の
$title = htmlspecialchars($title);
��不要。{ }内(一般的なインライン型プラグインでは通常$body。countdownプラグインでは$title)は、PukiWiki本体側でサニタイズされるので、プラグイン内でサニタイズしてはいけない。こうしておかないと、インライン要素のネストができなくなる。
- nao-pon
上記の件を rev. 1.6 で修正しました。 reimy さん、ありがとうございました。
- plugin_countdown_day()の戻り値を条件判定ではなくreturn $date-$today;とする事で終了後何日経過しているか、も算出できます*1。
ただ、これは西暦省略時の仕様と合わないかもしれませんので参考までに。 -- Michiru-K