Personal tools

addTrackbackHook

by ats posted at 2003-10-18 23:49 last modified 2005-10-18 23:00

そうです,その通りです。methodsにaddTrackbackHookというPythonScriptを置いておくと,TrackBack追加時に呼ばれます。ウチでは以下のようになっています。

try:
    mailhost=getattr(context, \
                     context.superValues('Mail Host')[0].id)
except:
    raise AttributeError, "cant find a Mail Host object"


to_addr   = "送信先のメールアドレス"
from_addr = "送信元のメールアドレス"

mMsg = """To: %s
From: %s
Mime-Version: 1.0

Title    :%s
UR       :%s
BlogName :%s
Body     :
%s""" % (to_addr,from_addr,d["title"],\
         d["url"],d["blog_name"],d["excerpt"])

mTo = to_addr
mFrom = from_addr
mSubj = 'Trackback added'

mailhost.send(mMsg, mTo, mFrom, mSubj)

文字コードは,jaMailHost内でpykfなりkconvなりが変換してくれます。メール送信のテンプレート部分に多バイト文字列を使っちゃうと(Bodyでなく本文,とか),そっちのコードに引きずられちゃうので凶です。

TrackBackの文字コードに関しては,このあたりでも,苦労している人が。。。エンコードの情報が送られて来ないので,基本的に自動判定->変換するしかないんですよね。相対的に見て,EUC-JPが日本語のBlogに優しい設定といえるでしょうか。

ちなみにCOREBlogでは,TrackBack送信時の文字コードを選べるようになっています。なので,運用S-JIS,TrackBackはEUC-JPとかいうこともできるようになっています。

The URL to Trackback this entry is:
http://coreblog.org/ats/70/tbping
Add comment

You can add a comment by filling out the form below. Plain text formatting.

(Required)
(Required)
(Required)
(Required)
コメントスパム避けのための認証文字列です

Captcha Image

Pythonな求人
r = urlopen("http://www.webcore.co.jp/recruit")
About this blog
■Author
atsこと柴田淳です。この記事を読んでいただくと,技術者としての人となりを分かってもらえるかも。
Webcore株式会社 代表取締役
Plone上で動く,オープンソースのBlog Product - COREBlog2を使って運用しています。

最近書いた原稿
最終回 Python 3.0座談会(動画つき) 2009-07-16
Python 3.0 Hacks 第6回 Pythonicな文字列フォーマットforamat()メソッド 2009-03-30
言語としての一貫性を重視したPython 3の進化 2009-02-20
Python 3が後方互換性を捨てても求めたもの 2009-02-02
Python 3.0 Hacks : 第0回 Pythonの2008-2009 2009-01-01
 
最近書いた本,Mook
みんなのPython 改訂版
Python使いはもちろん,プログラミングの初心者から,他言語からの移行組までご好評いただいているPythonの定番入門書の第2版です。Python 3.0を含む最新の情報について加筆を行い,より読みやすいように構成を大幅に見直しました。第一版をお持ちの方にもお役立ていただける内容になっています。
みんなのPython Webアプリ編
Pythonの基礎から,Webアプリやフレームワークの仕組みまで,つまることなく一気に学べる書籍です。「みんなのPython」と一緒に読んでください:-)。
 

Powered by Plone, the Open Source Content Management System