Home > Movable Type > A タグによるコメント SPAM 対策

A タグによるコメント SPAM 対策

mt-spamstop
ベリー・ベリー・シンプルなコメントスパム対策用のプラグインです。
概  要: Aタグを含むコメントスパムをブロック

すごくナイスなプラグインなのですが、
コメントの「URLを自動的にリンクにする」を有効にしている場合、
プレビュー画面でAタグが入ってしまい、投稿できなくなってしまいます。

プレビュー画面でのコメント情報を remove_html="1" すればよいのですが、
プレビューテンプレートを見てみるとそのような細かい書き換えができなくなっています。

そこで、その対策を考えてみました。

コメント・プレビューのテンプレート内に以下のような記述があります。

<MTIfCommentsAllowed>

<MTCommentFields preview="1">

</MTIfCommentsAllowed>

この中の、
<MTCommentFields preview="1">
を以下のように書き換えます。

個別エントリーアーカイブ内の以下の部分をコピペします。

<MTIfCommentsAllowed>
(ここから)
<h2>コメントしてください</h2>
<MTIfRegistrationRequired>

(中略)

</MTElse>
</MTIfRegistrationRequired>
(ここまで)
</MTIfCommentsAllowed>

その下に以下の JavaScript を足します。
Cookie 情報保存の可否を判定するものです。

<script type="text/javascript" language="javascript">
<!--
if (getCookie("mtcmtauth") || getCookie("mtcmthome")) {
document.comments_form.bakecookie[0].checked = true;
} else {
document.comments_form.bakecookie[1].checked = true;
}
//-->
</script>

そしてここからが重要なのですが、
コピペしたタグの中にある、FORM の INPUT にそれぞれ、
value="<$MTCommentPreviewAuthor encode_html="1"$>"
value="<$MTCommentPreviewEmail encode_html="1"$>"
value="<$MTCommentPreviewURL encode_html="1"$>"
属性を付け加えます。

textarea タグには、
<$MTCommentPreviewBody remove_html="1" convert_breaks="0"$>
を入れておきます。

URL とコメントは2箇所ありますので気をつけてください。

あとこれはどっちでもいいのですが、

<MTIfAllowCommentHTML>
(書式を変更するような一部のHTMLタグを使うことができます)
</MTIfAllowCommentHTML>

以上のタグはプレビュー画面ではなぜか無効になってしまいますので
削除しといたほうがいいと思います。

Comments:0

Comment Form

コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。

Trackbacks:0

TrackBack URL for this entry
http://yokku.net/mt/mt-tb.cgi/76
Listed below are links to weblogs that reference
A タグによるコメント SPAM 対策 from よっくらぼ

Home > Movable Type > A タグによるコメント SPAM 対策

Search
Feeds

Return to page top