[2009-08-16-2] のバージョンアップ。
「twitter でつぶやく
」ボタンに加え、「はてなブックマーク
」と
「livedoor クリップ
」ボタンも付けました。
「はてなブックマーク」はそろそろ使おうかなと思っていましたが、
livedoor のアカウントは以前破棄したので、このためだけにアカウントを
再取得しました。
今回も chalow 本体の修正です。chalow ユーザ向けに、オリジナ
ル(chalow-1.0.tar.gz)の cl.conf と chalow へのパッチを貼り付けてお
きますね。[2009-08-16-2]
のパッチよりも、こちらのパッチのほうが拡張
性あるのでオススメです。
--- cl.conf.org 2007-10-19 21:38:22.000000000 +0900
+++ cl.conf 2009-08-19 21:18:09.000000000 +0900
@@ -315,7 +315,7 @@
$item_template = << "EACHITEM"
<!-- start:<TMPL_VAR name=ymdi> -->
<div class="section">
-<h3 class="subtitle"><TMPL_VAR name=header> <TMPL_VAR name=cat></h3>
+<h3 class="subtitle"><TMPL_VAR name=header> <TMPL_VAR name=cat> <TMPL_VAR name=sbm></h3>
<p><TMPL_VAR name=content></p>
<TMPL_IF name=readmore>
<p>《<a href="<TMPL_VAR name=url>">続きを読む</a>》</p>
--- chalow.org 2007-10-19 23:15:01.000000000 +0900
+++ chalow 2009-08-19 22:10:37.000000000 +0900
@@ -586,6 +586,7 @@
$t->param(content => $ccc);
$t->param(header => $ih);
$t->param(cat => $catstr);
+ $t->param(sbm => make_sbm_link_html($e->{$i}{h}, $item_url));
$t->param(author => $e->{$i}{a});
$t->param(referrer => join(" ", @inside_refs));
$t->param(id => $item_id);
@@ -778,6 +779,7 @@
$t->param(header_text => $item->{ho});
$t->param(header => $item->{h});
$t->param(cat => $catstr);
+ $t->param(sbm => make_sbm_link_html($item->{h}, $item_url));
$t->param(author => $item->{a});
$t->param(referrer => join(" ", @inside_refs));
$t->param(id => $item_id); # 200101011
@@ -1401,6 +1403,37 @@
}
+### ソーシャルブックマーク用のリンクを作る。
+sub make_sbm_link_html {
+ my ($ih, $item_url) = @_;
+
+ my $item_url_full = $clog_url . $item_url;
+ my $link_html = "";
+
+ ### はてなブックマーク用のリンクを作る。
+ $link_html .= qq(<a href="http://b.hatena.ne.jp/entry/$item_url_full">).
+ qq(<img src="image/b_entry.gif" style="border:none" />).
+ qq(<img src="http://b.hatena.ne.jp/entry/image/$item_url_full" style="border:none" /></a>);
+
+ ### livedoor クリップ用のリンクを作る。
+ $link_html .= qq(<a href="http://clip.livedoor.com/page/$item_url_full">).
+ qq(<img src="image/livedoorcrip_append.gif" alt="livedoor clip" style="border:none" />).
+ qq(<img src="http://image.clip.livedoor.com/counter/$item_url_full" style="border:none" /></a>);
+
+ ### Tweeter 用のリンクを作る。
+ my $statusstr = $ih;
+ to_utf8_cl(\$statusstr);
+ $statusstr =~ s/([^0-9a-z_ ])/'%'.unpack('H2', $1)/gei;
+ $statusstr =~ s/\s$//;
+ $statusstr =~ s/\s/%20/g;
+ $link_html .= qq(<a href="http://twitter.com/home?status=%22$statusstr%22%20$item_url_full%20%23masutaka%20">).
+ qq(<img src="image/twittertubuyaku.png" alt="twitter" border="0" style="border:none").
+ qq( alt="つぶやく" title="つぶやく" /></a>);
+
+ return $link_html;
+}
+
+
### 指定されたファイルへ文字列を出力
sub output_to_file {
my ($fname, $contp) = @_;
- 画像ファイル は image ディレクトリに置いて下さい。
- Tweeter の %23masutaka は、適当な文字列に置き換えて下さい。
追記(2009-09-14):
はてなブックマークな人は、Firefox アドオン使っているだろうというこ
とで、Twitter のつぶやきボタン以外、止めました。
追記(2009-10-26):
やっぱり、上記全てのボタンを使うことにしました。