2004/09/30

さくらインターネットでBlogTimes

 かなり前からBlogTimesにチャレンジしてるんですがどうにもうまくいかないので、さくらインターネットに直接聞いてみました。さくらでも使えるという話は何処かのブログで読んでいましたが、pluginじゃなくてFlashでも表示できたので、そちらをトップページにつけたりして満足していて、そのまま解決できないまま懸案となっていました。今日さくらから以下のような回答が来ていました。

��前略)
「BlogTimes」は"さくらのレンタルサーバ"でご利用可能であることを、確認しております。お客様設置のプログラムに関しましては、当社ではサポート致しかねますので、作成、配布元へお問い合わせ下さい。
��中略)
 パールモジュールのバージョンに関しましては、[コントロールパネル]-
[サーバ情報の表示]で確認頂けます。GD.pmは"2.07"を使用しております。GD に"libgd-perl" は含まれております。
��後略)


 もうちょっと説明してくれてもいいんじゃないかとも思いましたが、とにかくGD.pmのバージョンが分かったので、早速ファイルを開いてそれを書き換えてみました。手元にあったのは2.12でしたが(5行目に書いてありました)、これをサーバーにあるものと合わせると上手くいく場合が多いとあちこちのブログで紹介されていたので、それを試したわけです。いつもながらその意味するところはよく分かりません。
 解決してしまいました。あっけなく。そこらで見かけるバーコードがめでたく私のページにも表示されているではありませんか。
 ここからが正念場でした。Flash版に完全に満足できずBlogTimesに未練があったのは、過去の画像が表示できない(たぶん)からでした。BlogTimesではそれができるということだったので、どうしてもプラグインを動かしたかったのです。ただ、公式サイトの説明ではどうやってもできる兆しが見えないので、いつものように先人の知恵を拝借することにしました。プラグインを見ると、66行目my (@entry_times,@entries, $entry);と68行目# Get entries for specified monthの間が空白になっています(つまり67行目)ので、そこに以下のものをとにかく何も考えずにまずはコピペ。

#----------------------------------------------------------------------------
my $offset = $args->{offset} || 0;
if( $offset ){
$period -= int($offset/12) * 100 + $offset % 12;
$period -= 88 if( '00' == substr($period,4,2) | 12 < substr($period,4,2) );
}
$basename .= '-' . substr($period,0,4) . '-' . substr($period,4,2);
#----------------------------------------------------------------------------

 それでもって、MTBlogTimesのタグにoffsetというものを指定するのだそうです。無指定では今月の、offset="1" で先月の、offset="2"で2ヶ月前のという具合に表示できるそうです。これもばっちり上手くいきました。
 今年の4月にブログを始めてからの私の投稿歴はこんな感じになりました。 






 これでもまあいいんですけど、本当はDate-Based Archiveのテンプレートにタグを書いて自動で作成して欲しかったんです。MTDateとかMTArchiveDateなんかを使えば出来るのではないかと思いますが力及ばずです。頑張ったものの、ページにタグが現れたりして打ちのめされました。どなたかそのようにしている方はいないでしょうか。トラックバック大いにお待ちしてます。
 とりあえずトップページでは、現在時刻なんかが表示される付加価値もあるFlash版を置いておくことにして、BlogTimesはまだ検討の余地ありです。
solvalou.net: BLOGTIMES(S)はじめました
X *ole.net : BlogTimes複数・過去表示とかまとめておこう。
BlogTimes

0 件のコメント:

コメントを投稿