« FreewarePalmその後 | メニューに最近読んだ本(その2) | 「ぱむあん。」 »

Fri September 17,2004

メニューに最近読んだ本(その2)

先日右のメニューに最近読んだ本を表示するようにしたのですが、方法があまりに強引で気持ち悪いので修正してみました
今回はMTISBNに手を入れてかなりマシな方法にしました(^^; さらにalt属性にコメントを入れるようにしたので、IEな方は書影の上にマウスを持っていくとコメントが見れます
ついでにそのままクリックしてお買い物していただけると開発費の足しになります(お

詳しくは続きで

ブログをもう一つ用意して<MTInclude>を使うのは前回と同じ
ブログのテンプレートも同じです

MTISBNは以下のように改造しました

package MT::Plugin::ISBN;

use strict;
use MT::Template::Context;
use vars qw($VERSION);
my $VERSION = '0.01';

#
# In the Templates, "Main Index", "Category Archive",
# "Individual Entry Archive", "Date-Based Archive" and so on:
#
# <$MTEntryBody isbn="1"$>
#
# And you can write "ISBN:4-8443-1812-8" or "ISBN:4844318128"
# in an Entry.
#

#
# SET LINK HTML
#
my $ISBN_HTML =<<'__EOF__';
<a href="http://www.amazon.co.jp/exec/obidos/ASIN/$isbn/pamya-22" target="_blank"><img alt="$comment" src="http://images-jp.amazon.com/images/P/$isbn.09.THUMBZZZ.jpg"><br/>$title</a>
__EOF__


#
#######################################################################

MT::Template::Context->add_global_filter(isbn => sub {
my ($str, $onoff, $ctx) = @_;
$str =~ s/(ISBN:\s*[-\w]+:TITLE:\s*\S+:COMMENT:\s*\S*:)/to_html($1)/ge if $onoff && $str =~ /ISBN:\s*[-\w]+:TITLE:\s*\S+:COMMENT:\s*\S*:/;
return $str;
});

sub to_html {
my $data = shift;
my $isbn = $data;
my $title = $data;
my $comment = $data;
$isbn =~ s/ISBN:\s*([-\w]+):TITLE:\s*\S+:COMMENT:\s*\S*:/$1/ge;
$isbn =~ tr/-//d if $isbn =~ /\-/;
$title =~ s/ISBN:\s*[-\w]+:TITLE:\s*(\S+):COMMENT:\s*\S*:/$1/ge;
$comment =~ s/ISBN:\s*[-\w]+:TITLE:\s*\S+:COMMENT:\s*(\S*):/$1/ge;

my $html = $ISBN_HTML;
$html =~ s/\$isbn/$isbn/g if $html =~ /\$isbn/;
$html =~ s/\$title/$title/g if $html =~ /\$title/;
$html =~ s/\$comment/$comment/g if $html =~ /\$comment/;
return $html;
}

1;
__END__
### Local Variables:
### mode: perl
### End:


過去にPerlをいじったことがないので効率の悪いコーディングになってそうですが、とりあえず動いているのでよしとします(^^;

これでエントリーに

ISBN: 4063405052:TITLE: のだめカンタービレ#10:COMMENT:ハリセン南無:

と書くとメニューに表示されているようになります

Posted at 00:54

Trackback Pings

このエントリーのトラックバックURL:
http://pam-ya.com/cgi/mt/mt-tb.cgi/166

このリストは、次のエントリーを参照しています: メニューに最近読んだ本(その2):

» [日記]今日はオフ会 from NARiの日記
なので、5時に退社予定。できれば早めについて、昨日買いにいけなかった「のだめカンタービレ10巻」(ISBN:4063405052)を買うつもり。 [続きを読む]

TrackBack at: September 20, 2004 12:51 AM

Comment

はじめまして、ぱむ屋様。QRMailには大変お世話になっております。ぱむ屋さんが「のだめ」を読んでいることを知り、いてもたってもいられなくなり、コメントして、トラックバックまでさせていただきました。「ハリセン南無」は思わず、吹き出してしまいました。

Posted by NARi at 00:36 09.20

"のだめ"はいいですよね~
フランス編に入っても相変わらず面白いわけですが、10巻で一番印象的だったのがあの4コマでした(^^;

Posted by EIJ at 02:37 09.21