back_and_forth #2 Posted at 2005/08/20 (Sat) 16:32 [Blosxom]
LittleStoryのMayimさん改造版のback_and_forthに入れ替えたら、link属性がうまく動かなかったので、Mayimさん改造版を参考にして、デフォルトのback_and_forthを改造して、dynamic_cacheで前後のエントリのキャッシュをクリアする事ができるようにしました。
デフォルトのback_and_forthの12行目辺り
use strict;
use vars qw($prev $next $link_prev $link_next);
use vars qw($prev_pathname $next_pathname); # この行を書き加える
# --- Configurable variables -----------
46行目辺り
if ($index > 0) {
my($prev_url, $prev_title) = &getinfo($index - 1, \@file_info);
$link_prev = qq!<link rel="previous" href="$prev_url" />!;
$prev = &$blosxom::template($path, 'back_and_forth_prev', $blosxom::flavour) || '<p><a href="$back_and_forth::prev_url">« $back_and_forth::prev_title</a></p>';
$prev =~ s/\$back_and_forth::prev_url/$prev_url/ge;
$prev =~ s/\$back_and_forth::prev_title/$prev_title/ge;
$prev_pathname = $prev_url and $prev_pathname =~s/^$blosxom::url//g; # この行を書き加える
}
54行目辺り
if ($index < $#file_info) {
my($next_url, $next_title) = &getinfo($index + 1, \@file_info);
$link_next = qq!<link rel="next" href="$next_url" />!;
$next = &$blosxom::template($path, 'back_and_forth_next', $blosxom::flavour) || '<p><a href="$back_and_forth::next_url">$back_and_forth::next_title »</a></p>';
$next =~ s/\$back_and_forth::next_url/$next_url/ge;
$next =~ s/\$back_and_forth::next_title/$next_title/ge;
$next_pathname = $next_url and $next_pathname =~s/^$blosxom::url//g; # この行を書き加える
}
"この行を書き加える"の部分を書き加え、wikieditishのformタグ内に、
<input type=hidden name=recache_entries value="$back_and_forth::prev_pathname;$back_and_forth::next_pathname">
を書き足せば、前後のエントリのキャッシュもクリアできる。(上記のback_and_forthの改造は、link属性で右が古いエントリとなるようにした改造後のコードです。)
« blosxomを掲示板化 #6
| parmalink paging | カテゴリ見直し »
ads
Related goods
TrackBacks
No trackback.
Comments
No comment.
« blosxomを掲示板化 #6
| parmalink paging | カテゴリ見直し »





