Amaznode プラグイン
「最新テクノ・ディスク80」をしこしこ打ち込んだときに、「テクノ名盤200+α」と同じTechniqueへのリンクじゃつまらないなあと思い、Amaznodeへのリンクをはるために、FreeStyleWiki用の、Amaznodeプラグインを作ってみました。
といっても、プラグインと呼ぶのもおこがましい感じの、ホントにリンクをはるだけのものです。
作っては見たものの、「最新テクノ・ディスク80」からリンクをはっても検索結果がおもしろくない(なんにもでてこないミュージシャンも多い!)ので、結局Techniqueへのリンクにしてしまいました。
でも、せっかく作ったので、屁みたいなプラグインですが、一応公開しておきます。
使い方
{{amaznode "アルフレッド ベスター",b}} {{amaznode yanokami,m}} {{amaznode 驚異,d}}
{{amaznode "アルフレッド ベスター",b}}
{{amaznode yanokami,m}}
{{amaznode 驚異,d}}
末尾のbとかmとかは商品ジャンルの指定です。
a | Blended(すべてのジャンル) |
b | Books |
m | Music |
v | VideoGames |
s | Software |
d | DVD |
ダウンロード
- amaznode.zip(242)
ソースコード
codeプラグインの使い方の練習もかねて、ソースコードを表示してみました。見ていただくとわかるように、ホントに何もしてません。
59行目の$aidという変数にアマゾンのアフィリエイトIDを入れるといいはずですが、自分がもってないもんで、うまく動くかどうか確かめてません。
1 |
###################################################################### # # <p>amaznodeで検索</p> # <pre> # {{amaznode Phunture,m}} # </pre> # <p> # word # genre # a:Blended # b:Books # m:Music # v:VideoGames # s:Software # d:DVD # </p> # ###################################################################### package plugin::amaznode::Amaznode; use strict; #===================================================================== # コンストラクタ #===================================================================== sub new { my $class = shift; my $self = {}; return bless $self,$class; } #===================================================================== # インラインメソッド #===================================================================== sub inline { my $self = shift; my $wiki = shift; my $word = shift; my $opt = shift; my $cgi = $wiki->get_CGI; my %genre = ( "a" => 'Blended', "b" => 'Books', "m" => 'Music', "v" => 'VideoGames', "s" => 'Software', "d" => 'DVD', ); if($word eq ""){ return $wiki->error("検索語が指定されていません。"); } if(($opt eq "") || !(exists($genre{$opt}))){ $opt = "a"; } $opt = $genre{$opt}; my $aid = ""; if ($aid){ $aid = '&affiliate='.$aid; } my $escape = Util::escapeHTML($word); return <<"EOD"; <!-- START --> <input type="button" value="amaznode $word @ $opt" onClick="window.open('http://amaznode.fladdict.net/#keywords=$word&locale=jp&searchIndex=$opt$aid');return false;"><br> <!-- END --> EOD } #<a href="http://amaznode.fladdict.net/#keywords=$word&locale=jp&searchIndex=Music&affiliate=xxx" target="_blank"> 1; |
関連ページ