このサイトについて

BlogのRefererを編集できるようにした

BlogのRefererを編集できるようにした

COREBlogと組み合わせて使うRefererプロダクトに,いくつかMethodを足して,かつ管理画面上に表示する編集用のDTMLを書いて,Refererの確認と削除ができるようにした。とりあえずはこれで最低限必要な機能は備わった。

ちなみに,Refererを記録するには,ProductをCOREBlogのcontentsに追加して,かつindex_htmlなどに以下のようなロジックを埋め込みます。

<dtml-try>
<dtml-call "referer_plugin.addReferer(id,REQUEST)">
<dtml-except>
</dtml-try>

このようにエントリのIDとREQUESTを渡してやると,必要であればRefererの情報を追加してくれます。referer_pluginというのはProductのIDですね。

で,Refererを表示するためには

<dtml-comment>### Show Referer ###</dtml-comment>
<dtml-in "referer_plugin.getReferer(id)">
<dtml-if sequence-start>
<a name="referer"></a>
<div class="comments-head"><a name="comments"></a>Referer</div>
<div class="posted">
</dtml-if>
<a href="<dtml-var referer_url>"><dtml-var "_['sequence-index']+1">...[<dtml-var referer_count>]</a>&nbsp;
<dtml-if sequence-end></div></dtml-if>
</dtml-in>

みたいにします。なんかキタナイな。ちょっと書き直そう。

一日使ってみて,特に余計な負荷がかかっている様子もなく,Data.fsが際限なく膨らんでゆく風でもないので,もうちょっと運用してProductとして公開します。

2010-08-27 04:25