iBlog
のバージョン表示を
iblogPatcher で管理する方法
サイトに iBlog のバージョンを表示している方が結構いますね。もしあなたが
iblogPatcher を使用しているのなら、iBlog のバージョンが上がる度に一々テンプレートを書き換えてプレビュー状態をリセットする必要は全くありません。
概要
これは iguttchi さんのエントリ「最近の変更点まとめ」のコメントに書いたものです。テンプレートの iBlog のバージョンを書くところに印をつけておき、preview after のときにそれをブログ定義ファイルに書いておいた iBlog のバージョンの表記に置き換えるというアイデアです。
このやり方ではブログ定義ファイルに書いたバージョン番号を変えて preview after を行えば全てのページの中の当該部分が入れ替わります。幾つものテンプレートファイルを書き換えたりする必要はありません。ナビゲーション項目として書くという iblogPatcher を使用していない方にも通用する方法がありますが、これですと全てのページに反映させるためにはプレビュー状態をリセットする必要がありました。その必要もありません。
ただし、私自身は iBlog のバージョンを表示していないので実際には試していません。何か書き間違えなどがありましたらご指摘ください。
テンプレートファイルへの仕込み
テンプレートファイルやナビゲーション項目の中で iBlog のバージョンを書きたいところへ次のように書いてください。
<!-- BEGIN iBlogVersion -->iBlog 0.0.0<!-- END iBlogVersion -->
最初なのでプレビュー状態をリセットするなどしてテンプレートをプレビューのページに反映させてください。
ブログ定義ファイルへの仕込み
ブログ定義ファイルの中の %ACTION > preview > after のセクションの中に次のコードを埋め込みます。
# iBlog のバージョンを埋め込む
foreach (
'BlogPage',
'CategoryPage',
'EntryPage',
'ArchivePage',
'YearPage',
'DayPage',
) {
my $targetPage = $_;
push @{$CHANGE_CONTENT::Conf{$targetPage}}, {
condition => '<!-- BEGIN iBlogVersion -->iBlog¥s+¥d+(?:¥.¥d+)*<!-- END iBlogVersion -->',
replace => '<!-- BEGIN iBlogVersion -->iBlog 1.4.3<!-- END iBlogVersion -->',
option => 'g', # 一つのページに一カ所だけなら g は要らない
};
}
埋め込む場所はエントリ「iblogPatcher のブログ定義ファイルテンプレート」で示したブログ定義ファイルでいうと # 連続する <br /> を一つにまとめる
の前あたりがよいでしょう。
こののち preview after で iblogPatcher を実行するとテンプレートで仕込んだ部分に iBlog 1.4.3
が入ります。バージョンが上がったら上の replace の行の 1.4.3
の部分を書き換えてください。
Posted: 05:07
|
Comment
|
Trackback
以下、類似エントリです。