Trencaspammersへスイッチ

1.5にしてから使用していた、AuthImageですが、色々とパラメータをいじったものの、コードが見にくいという事態を解消することはできませんでした。そこでTrencaspammersに戻すことにしました。

といっても、ローカルでテストしていたときはうまくいかなかったので、もう一度きちんとやり直してみることにします。流れはまず普通に導入し、動作テスト。次にOtsukareさんが作成されたプレビュー機能付のバージョンを移植して、テストしてみます。プラグインファイル自体はどちらもOtsukareさんのものを使用しました。

導入方法

本家版の導入まで

まずtrencaspammers.phpを開き、$site_keyを適当な8桁の数字に変更する。

次に自分の使っているテーマのcomments.phpを開いて、(以下はデフォルトのKubrick場合)

<p><textarea name="comment" id="comment" cols="100%" rows="10" tabindex="4"></textarea></p>

の後に、次のコードを追加します。多少配置やメッセージは変更してあります。

<p>
<?php $ts_random=rand() ?>
<input type="hidden" name="ts_random" value="<?php print $ts_random; ?>" />
<img src="<?php echo get_settings('siteurl'); ?>/wp-content/plugins/trencaspammers.php?ts_random=<?php print $ts_random; ?>" alt="Random Number" />
 <input type="text" name="ts_code" id="ts_code" size="28" tabindex="5" />
<br />※ コメント投稿時に上記ランダムナンバーを入力してください。
</p>

最後に、wp-comments-post.phpを開いて、

if ( '' == $comment_content )
die( __('Error: please type a comment.') );

の後あたりに、次のコードを追加します。

// coffelius was here
$ts_code=trim($_POST['ts_code']);
$ts_random=$_POST['ts_random'];
if ( !ts_is_human($ts_random, $ts_code))
die( __('Error: please type the security code.'));
// coffelius was here end

これでプラグインを有効にすれば、一応動作するはずです。

プレビュー機能を移植する

次にプレビュー機能を移植するわけですが、結構手間がかかるのでコード追加済みのwp-comment-post.phpを用意しました。

日本語のみです。差し替えてお使い下さい。

これでかなり手間は軽減されたはずです。スパムに対しては、SOMY SpamBlock Japaneseがあるので大丈夫だとは思いますが…


26. 3月 2005 by Castaway。
Categories: WordPress | 1 comment