お薦め ページ


メニュー

ハワイ島 遊覧飛行ツアー

ハワイ島 B&B・ホテル

ハワイ島 不動産情報

ハワイ島 情報・観光ガイド

ブログ(Blog)

その他

関連サイト

: 個別エントリー・アーカイブ :

2006年1月 2日

MovableType のスパム対策(11) 「コメントスパム対策(10)」

前回の 『MovableType のスパム対策(10) 「コメントスパム対策(9)」 』からの続き。 やっと、問題点が解決しましたので、今回はそのまとめ。

コメントスパム対策を行ってきたなかで、 最後に残った コメント入力時の「名前」「メールアドレス」「URL」の 値が引き継がれない問題点は、 JavaScriptの問題だったとわかりました。 そこで、以前のエントリー でも、予告しておいた、 この問題への対応版コメントフォームを 今回、掲載させていただきます。 これは、このシリーズでは「CommentFieldsTemplate」と名付けているテンプレートで 現在、JTPAのサイトで実際に使っている内容です。
<MTEntryIfCommentsOpen> 

<h2>コメントしてください</h2>

<MTIfRegistrationRequired>

<MTIfNonEmpty tag="MTTypeKeyToken">
<div id="thanks">
<p>サイン・インを確認しました、
<script type="text/javascript" src="<MTCGIPath><MTCommentScript>?__mode=cmtr_name_js"></script>
<script>document.write(commenter_name);</script>
さん。続けてコメントしてください。
(<a href="<$MTCGIPath$><$MTCommentScript$>?__mode=handle_sign_in&static=1&
entry_id=<$MTEntryID$>&logout=1">サイン・アウト</a>)</p>

(いままで、ここでコメントしたとがないときは、コメントを表示する前にこのウェブログのオーナー
の承認が必要になることがあります。承認されるまではコメントは表示されません。
そのときはしばらく待ってください。)

<form method="post" action="<$MTCGIPath$><$MTCommentScript$>" name="comments_form"
onsubmit="if (this.bakecookie[0].checked) rememberMe(this)">
<input type="hidden" name="static" value="<$MTCommentPreviewIsStatic$>" />
<input type="hidden" name="entry_id" value="<$MTEntryID$>" />

<input type="hidden" name="spammer" value="goaway" />
<input type="hidden" name="spamming" value="gotohell" />


<p><label for="url">URL:</label><br />
<input tabindex="1" type="text" name="url" id="url" /></p>

<p>入力情報を記憶する:
<input type="radio" id="remember" name="bakecookie" onclick="rememberMe(this.form)" />
<label for="remember">はい</label>
<input type="radio" id="forget" name="bakecookie" onclick="forgetMe(this.form)"
value="Forget Info" style="margin-left: 15px;" />
<label for="forget">いいえ</label><br style="clear: both;" />
</p>

<p><label for="text">コメント:</label><br />
<textarea tabindex="2" id="text" name="text" rows="10" cols="50"></textarea></p>

<div align="center">
<input type="submit" tabindex="3" name="preview" value=" 確認 " />
<input style="font-weight: bold;" tabindex="4" type="submit" name="post" value=" 投稿 " />
</div>
</form>

</div>

<script language="javascript" type="text/javascript">
<!--
if (commenter_name) {
document.getElementById('thanks').style.display = 'block';
} else {
document.write('サイン・インしていません。このサイトにコメントをする前に登録してください。<a href="<$MTSignOnURL$>&v=1.1&<MTIfNeedEmail>need_email=1&</MTIfNeedEmail>t=<MTTypeKeyToken>&_return=<$MTCGIPath$><MTCommentScript>%3f__mode=handle_sign_in%26static=1%26entry_id=<$MTEntryID$>">サイン・イン</a>');
document.getElementById('thanks').style.display = 'none';
}
// -->
</script>

<MTElse>
コメント登録機能が設定されていますが、TypeKey トークンが設定されていません。
</MTElse>
</MTIfNonEmpty>

<MTElse>
<MTIfNonEmpty tag="MTTypeKeyToken">
<script type="text/javascript" src="<MTCGIPath><MTCommentScript>?__mode=cmtr_name_js"></script>

<script language="javascript" type="text/javascript">
<!--
if (commenter_name) {
document.write('<p>サイン・インを確認しました、', commenter_name, ' さん。続けてコメントしてください。(<a href="<$MTCGIPath$><$MTCommentScript$>?__mode=handle_sign_in&static=1&entry_id=<$MTEntryID$>&logout=1">サイン・アウト</a>)</p>');
} else {
document.write('<p>TypeKey ID を使って<a href="<$MTSignOnURL$>&v=1.1&<MTIfNeedEmail>need_email=1&</MTIfNeedEmail> t=<MTTypeKeyToken>&_return=<$MTCGIPath$><MTCommentScript>%3f__mode=handle_sign_in%26static=1%26entry_id=<$MTEntryID$>">サイン・イン</a> してください。</p>');
}
// -->
</script>
</MTIfNonEmpty>

<form method="post" action="<$MTCGIPath$><$MTCommentScript$>" name="comments_form"
onsubmit="if (this.bakecookie[0].checked) rememberMe(this)">
<input type="hidden" name="static" value="<$MTCommentPreviewIsStatic$>" />
<input type="hidden" name="entry_id" value="<$MTEntryID$>" />

<input type="hidden" name="spammer" value="goaway" />
<input type="hidden" name="spamming" value="gotohell" />

<div id="name_email">
<p><label for="author">名前:</label><br />
<input tabindex="1" id="author" name="author" value="<$MTCommentPreviewAuthor$>" /></p>

<p><label for="email">メールアドレス:</label><br />
<input tabindex="2" id="email" name="email" value="<$MTCommentPreviewEmail$>" /></p>

</div>

<MTIfNonEmpty tag="MTTypeKeyToken">
<script language="javascript" type="text/javascript">
<!--
if (commenter_name) {
document.getElementById('name_email').style.display = 'none';
}
// -->
</script>
</MTIfNonEmpty>

<p><label for="url">URL:</label><br />
<input tabindex="3" type="text" name="url" id="url" value="<$MTCommentPreviewURL$>" /></p>


<p>入力情報を記憶する:
<input type="radio" id="remember" onClick="rememberMe(this.form)" name="bakecookie" />
<label for="remember">はい</label>
<input type="radio" id="forget" name="bakecookie" onclick="forgetMe(this.form)"
value="Forget Info" style="margin-left: 15px;" />
<label for="forget">いいえ</label><br style="clear: both;" /></p>

<p><label for="text">コメント: (日本語でお書き込みください)</label><MTIfAllowCommentHTML></MTIfAllowCommentHTML><br/>
<textarea tabindex="4" id="text" name="text" rows="10" cols="50"><$MTCommentPreviewBody sanitize="a href"$></textarea></p>

<div align="center">
<input type="submit" name="preview" tabindex="5"
value=" 確認 " />
<input style="font-weight: bold;" type="submit" name="post"
tabindex="6" value=" 投稿 " />
</div>
</form>

</MTElse>
</MTIfRegistrationRequired>
</MTIfCommentsAllowed>

<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>
</MTEntryIfCommentsOpen>


さて、これでこの問題は解決しましたが、 ムーバブル・タイプのスパム対策は、まだまだ続くことになります。

カテゴリー: MTスパム     2006年1月 2日 22:00

トラックバック

このエントリーのトラックバックURL:
http://www.skymerica.com/blog/yotsumoto/mt/mt-tb.cgi/301

このリストは、次のエントリーを参照しています: MovableType のスパム対策(11) 「コメントスパム対策(10)」:

» コメントスパムなんて絶対大嫌い for MovableType 3.2 from 針中野ミュージック
最近コメントスパムがとみに増えてきて鬱陶しいので、久しぶりにコメントスパム対策に精を出してみた。 [続きを読む]

トラックバック時刻: 2006年5月27日 19:43

» コメントスパムなんて絶対大嫌い for MovableType 3.2 from 針中野ミュージック
最近コメントスパムがとみに増えてきて鬱陶しいので、久しぶりにコメントスパム対策に精を出してみた。 [続きを読む]

トラックバック時刻: 2006年5月27日 19:45

» コメントスパムなんて大嫌い for MovableType 3.1 from 針中野ミュージック
ダミー変数を使った MovableType コメントスパム対策の MT 3.x 対応版。 [続きを読む]

トラックバック時刻: 2006年5月27日 20:05


コメント

はじめまして。「針中野ミュージック」の管理人の(Reia改め) namancha と申します。かなり遅くなって恐縮ですが、コメントスパム対策にまた真面目に取り組むことにしたのをきっかけに、こちらのblogの記事を参考にさせていただきました。
ずっと困っていたバグを解決してくださって、ほんとうにありがとうございました。
元記事でも紹介し、今後はこちらの記事を参考にしたフォームを推奨することにさせていただきました。
この件で勝手なお願いなのですが、記事の書き直しにあたっての不具合で、無用なトラックバックを2つ作ってしまい、申し訳ございません。19:45と20:05のタイムスタンプのトラックバックを削除していただけるとうれしゅうございます。

これを機に今後も「シリコンバレー 24時」を楽しみに読ませていただきますので、よろしくお願いいたします。

投稿者 namancha : 2006年5月27日 20:28

コメントしてください




保存しますか?


 
ハワイ島での遊覧飛行ツアーとB&Bのスペシャリスト、スカイメリカ
Copyright © 2003,2009 Skymerica Corp. All rights reserved.