Version Description
IP192.168.1.0/24IP 192.168.0.1,192.168.1.0/24,69.208.0.0/16 [192.168.0.1][192.168.1.0 192.168.1.255][69.208.0.0 69.208.255.255]IP
Download this release
Release Info
Developer | tsato |
Plugin | Throws SPAM Away |
Version | 2.1 |
Comparing to | |
See all releases |
Code changes from version 2.0 to 2.1
- readme.txt +21 -16
- throws_spam_away.php +33 -6
readme.txt
CHANGED
@@ -3,8 +3,8 @@ Contributors: taman777
|
|
3 |
Donate link: http://gti.jp/
|
4 |
Tags: comments, spam
|
5 |
Requires at least: 3.1
|
6 |
-
Tested up to: 3.
|
7 |
-
Stable tag: 2.
|
8 |
|
9 |
コメントに日本語が使用されていないものや任意のIPアドレスからの投稿を無視するプラグイン
|
10 |
|
@@ -23,20 +23,24 @@ Stable tag: 2.0
|
|
23 |
日本語が一切入っていないコメントでも「NGキーワード」だけ設定したい場合を想定し
|
24 |
日本語が入っていないと許可しない設定を「オン・オフ」出来るようになっています。
|
25 |
以前にスパムとしてチェックした投稿のIPアドレス及び、任意のIPアドレスでの制御も出来るようになっています。
|
|
|
|
|
|
|
26 |
|
|
|
27 |
|
28 |
-
|
29 |
-
トラックバック記事の内容に日本語を含まないものを無視します。
|
30 |
-
加えて、トラックバック記事内にこちらのサイトのURLが含まれない場合、日本語が含まれていても無視するかどうかの設定も出来るようにしました。
|
31 |
|
32 |
-
|
33 |
-
|
|
|
34 |
|
35 |
-
|
36 |
-
|
37 |
-
0以上の場合の挙動は以前と変わらずJavaScriptで時間になったら戻ってきます。
|
38 |
|
39 |
-
|
|
|
|
|
40 |
|
41 |
|
42 |
制作:佐藤 毅(さとう たけし) <a href="http://gti.jp/" target="_blank">博多 南福岡 ホームページ制作</a> 株式会社ジーティーアイ代表
|
@@ -57,15 +61,16 @@ e.g.
|
|
57 |
2. Activate the plugin through the 'Plugins' menu in WordPress
|
58 |
|
59 |
== Frequently Asked Questions ==
|
60 |
-
|
61 |
-
= A question that someone might have =
|
62 |
-
|
63 |
-
= What about foo bar? =
|
64 |
-
|
65 |
|
66 |
== Screenshots ==
|
67 |
|
68 |
== Changelog ==
|
|
|
|
|
|
|
|
|
|
|
69 |
= 2.0 =
|
70 |
下記の機能を追加しました。
|
71 |
・コメント投稿者のIPアドレスが以前スパム扱いとなったものと同じIPアドレスからの投稿であれば無視するようにする機能
|
3 |
Donate link: http://gti.jp/
|
4 |
Tags: comments, spam
|
5 |
Requires at least: 3.1
|
6 |
+
Tested up to: 3.5.1
|
7 |
+
Stable tag: 2.1
|
8 |
|
9 |
コメントに日本語が使用されていないものや任意のIPアドレスからの投稿を無視するプラグイン
|
10 |
|
23 |
日本語が一切入っていないコメントでも「NGキーワード」だけ設定したい場合を想定し
|
24 |
日本語が入っていないと許可しない設定を「オン・オフ」出来るようになっています。
|
25 |
以前にスパムとしてチェックした投稿のIPアドレス及び、任意のIPアドレスでの制御も出来るようになっています。
|
26 |
+
IPアドレスの指定は「,(半角カンマ)」区切りで複数入力できますが、「192.168.1.0/24」のようにIPアドレスの範囲指定も可能です。
|
27 |
+
※例:192.168.0.1,192.168.1.0/24,69.208.0.0/16 と指定した場合
|
28 |
+
[192.168.0.1]と[192.168.1.0 ~ 192.168.1.255]と[69.208.0.0 ~ 69.208.255.255]のIPアドレスを拒否対象とします。
|
29 |
|
30 |
+
・バージョン2.1でIPアドレスの範囲指定を可能にしました。
|
31 |
|
32 |
+
・バージョン2.0で、WordPressのcommentsテーブルを検索し「spam」扱いとなったコメントのIPを収集しそのIPからの投稿を無視出来る機能と任意のIPアドレスからの投稿を無視出来る機能をつけました。
|
|
|
|
|
33 |
|
34 |
+
・バージョン1.7で、元の画面に戻ってくる際の挙動を修正しました。
|
35 |
+
エラー画面表示の時間を「0」に設定していた場合はエラー画面を一切介さずリダイレクトするようにしました。
|
36 |
+
0以上の場合の挙動は以前と変わらずJavaScriptで時間になったら戻ってきます。
|
37 |
|
38 |
+
・バージョン1.6にてNGキーワードとは逆にコレが入っていないとダメという「必須キーワード」の設定が出来るようにしました。
|
39 |
+
日本語を入れれば良いため通ってしまいやすい「中国語」への配慮です。「が」や「の」や「は」など、日本語文章が成り立つ上で必ず使用するであろう「ひらがな」を入れることで効力が発揮されると思います。
|
|
|
40 |
|
41 |
+
・バージョン1.5では「トラックバック」に対しても同様の規制を入れられるようになりました。
|
42 |
+
トラックバック記事の内容に日本語を含まないものを無視します。
|
43 |
+
加えて、トラックバック記事内にこちらのサイトのURLが含まれない場合、日本語が含まれていても無視するかどうかの設定も出来るようにしました。
|
44 |
|
45 |
|
46 |
制作:佐藤 毅(さとう たけし) <a href="http://gti.jp/" target="_blank">博多 南福岡 ホームページ制作</a> 株式会社ジーティーアイ代表
|
61 |
2. Activate the plugin through the 'Plugins' menu in WordPress
|
62 |
|
63 |
== Frequently Asked Questions ==
|
64 |
+
質問やご要望はSupportまたは弊社お問い合わせ(http://gti.jp/)へお願いします!
|
|
|
|
|
|
|
|
|
65 |
|
66 |
== Screenshots ==
|
67 |
|
68 |
== Changelog ==
|
69 |
+
= 2.1 =
|
70 |
+
IPアドレスの指定に「192.168.1.0/24」のようにIPアドレス範囲指定出来るようにしました。
|
71 |
+
※例:192.168.0.1,192.168.1.0/24,69.208.0.0/16 と指定した場合
|
72 |
+
[192.168.0.1]と[192.168.1.0 ~ 192.168.1.255]と[69.208.0.0 ~ 69.208.255.255]のIPアドレスを拒否対象とします。
|
73 |
+
|
74 |
= 2.0 =
|
75 |
下記の機能を追加しました。
|
76 |
・コメント投稿者のIPアドレスが以前スパム扱いとなったものと同じIPアドレスからの投稿であれば無視するようにする機能
|
throws_spam_away.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
Plugin URI: http://gti.jp/tsa/
|
5 |
Description: コメント内に日本語の記述が存在しない場合はあたかも受け付けたように振る舞いながらも捨ててしまうプラグイン
|
6 |
Author: 株式会社ジーティーアイ さとう たけし
|
7 |
-
Version: 2.
|
8 |
Author URI: http://gti.jp/
|
9 |
*/
|
10 |
|
@@ -63,7 +63,7 @@ add_action('pre_comment_on_post', array(&$newThrowsSpamAway, "comment_post"), 1)
|
|
63 |
*/
|
64 |
class ThrowsSpamAway {
|
65 |
// version
|
66 |
-
var $version = '2.
|
67 |
|
68 |
public function __construct() {
|
69 |
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
@@ -114,6 +114,7 @@ class ThrowsSpamAway {
|
|
114 |
case "block_ip" :
|
115 |
$error_msg = (get_option('tsa_block_ip_address_error_message') != NULL ?
|
116 |
get_option('tsa_block_ip_address_error_message') : $default_block_ip_address_error_msg);
|
|
|
117 |
default :
|
118 |
$error_msg = (get_option('tsa_error_message') != NULL ?
|
119 |
get_option('tsa_error_message') : $default_error_msg);
|
@@ -125,7 +126,7 @@ class ThrowsSpamAway {
|
|
125 |
header("Location:".$_SERVER['HTTP_REFERER']);
|
126 |
die;
|
127 |
} else {
|
128 |
-
wp_die( __(($error_msg != NULL? $error_msg :
|
129 |
}
|
130 |
}
|
131 |
|
@@ -156,7 +157,14 @@ class ThrowsSpamAway {
|
|
156 |
if ($block_ip_addresses != NULL && $block_ip_addresses != "") {
|
157 |
$ip_list = mb_split(",", $block_ip_addresses);
|
158 |
foreach ($ip_list as $ip) {
|
159 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
// ブロックしたいIP
|
161 |
$error_type = "block_ip";
|
162 |
return FALSE;
|
@@ -168,6 +176,25 @@ class ThrowsSpamAway {
|
|
168 |
return TRUE;
|
169 |
}
|
170 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
171 |
/**
|
172 |
* 日本語が含まれているかチェックメソッド
|
173 |
* @param string $comment
|
@@ -374,12 +401,12 @@ class ThrowsSpamAway {
|
|
374 |
</tr>
|
375 |
<tr valign="top">
|
376 |
<th scope="row">ブロック対象のIPアドレスからの投稿時に表示される文言<br />(元の記事に戻ってくる時間の間のみ表示)</th>
|
377 |
-
<td><input type="text" name="
|
378 |
value="<?php echo get_option('tsa_block_ip_address_error_message');?>" /><br />(初期設定:<?php echo $default_block_ip_address_error_msg; ?>)</td>
|
379 |
</table>
|
380 |
<input type="hidden" name="action" value="update" /> <input
|
381 |
type="hidden" name="page_options"
|
382 |
-
value="tsa_on_flg,tsa_japanese_string_min_count,tsa_back_second,tsa_caution_message,tsa_error_message,tsa_ng_keywords,tsa_ng_key_error_message,tsa_must_keywords,tsa_must_key_error_message,tsa_tb_on_flg,tsa_tb_url_flg,tsa_block_ip_addresses,tsa_ip_block_from_spam_chk_flg,
|
383 |
<p class="submit">
|
384 |
<input type="submit" class="button-primary"
|
385 |
value="<?php _e('Save Changes') ?>" />
|
4 |
Plugin URI: http://gti.jp/tsa/
|
5 |
Description: コメント内に日本語の記述が存在しない場合はあたかも受け付けたように振る舞いながらも捨ててしまうプラグイン
|
6 |
Author: 株式会社ジーティーアイ さとう たけし
|
7 |
+
Version: 2.1
|
8 |
Author URI: http://gti.jp/
|
9 |
*/
|
10 |
|
63 |
*/
|
64 |
class ThrowsSpamAway {
|
65 |
// version
|
66 |
+
var $version = '2.1';
|
67 |
|
68 |
public function __construct() {
|
69 |
add_action( 'admin_menu', array( $this, 'admin_menu' ) );
|
114 |
case "block_ip" :
|
115 |
$error_msg = (get_option('tsa_block_ip_address_error_message') != NULL ?
|
116 |
get_option('tsa_block_ip_address_error_message') : $default_block_ip_address_error_msg);
|
117 |
+
break;
|
118 |
default :
|
119 |
$error_msg = (get_option('tsa_error_message') != NULL ?
|
120 |
get_option('tsa_error_message') : $default_error_msg);
|
126 |
header("Location:".$_SERVER['HTTP_REFERER']);
|
127 |
die;
|
128 |
} else {
|
129 |
+
wp_die( __(($error_msg != NULL? $error_msg : "")."<script type=\"text/javascript\">window.setTimeout(location.href='".$_SERVER['HTTP_REFERER']."', ".$back_time.");</script>", 'throws-spam-away'));
|
130 |
}
|
131 |
}
|
132 |
|
157 |
if ($block_ip_addresses != NULL && $block_ip_addresses != "") {
|
158 |
$ip_list = mb_split(",", $block_ip_addresses);
|
159 |
foreach ($ip_list as $ip) {
|
160 |
+
// 指定IPが範囲指定の場合 例:192.168.1.0/24
|
161 |
+
if ( strpos( $ip, "/" ) != FALSE ) {
|
162 |
+
if ( $this->inCIDR( $target_ip, $ip ) ) {
|
163 |
+
// ブロックしたいIP
|
164 |
+
$error_type = "block_ip";
|
165 |
+
return FALSE;
|
166 |
+
}
|
167 |
+
} elseif (trim($ip) == trim($target_ip)) {
|
168 |
// ブロックしたいIP
|
169 |
$error_type = "block_ip";
|
170 |
return FALSE;
|
176 |
return TRUE;
|
177 |
}
|
178 |
|
179 |
+
/**
|
180 |
+
* CIDRチェック
|
181 |
+
* @param string $ip
|
182 |
+
* @param string $cidr
|
183 |
+
* @return boolean
|
184 |
+
*/
|
185 |
+
function inCIDR($ip, $cidr) {
|
186 |
+
list($network, $mask_bit_len) = explode('/', $cidr);
|
187 |
+
if ( !is_nan($mask_bit_len) && $mask_bit_len <= 32) {
|
188 |
+
$host = 32 - $mask_bit_len;
|
189 |
+
$net = ip2long($network) >> $host << $host; // 11000000101010000000000000000000
|
190 |
+
$ip_net = ip2long($ip) >> $host << $host; // 11000000101010000000000000000000
|
191 |
+
return $net === $ip_net;
|
192 |
+
} else {
|
193 |
+
// 形式が不正ならば無視するためFALSE
|
194 |
+
return FALSE;
|
195 |
+
}
|
196 |
+
}
|
197 |
+
|
198 |
/**
|
199 |
* 日本語が含まれているかチェックメソッド
|
200 |
* @param string $comment
|
401 |
</tr>
|
402 |
<tr valign="top">
|
403 |
<th scope="row">ブロック対象のIPアドレスからの投稿時に表示される文言<br />(元の記事に戻ってくる時間の間のみ表示)</th>
|
404 |
+
<td><input type="text" name="tsa_block_ip_address_error_message" size="100"
|
405 |
value="<?php echo get_option('tsa_block_ip_address_error_message');?>" /><br />(初期設定:<?php echo $default_block_ip_address_error_msg; ?>)</td>
|
406 |
</table>
|
407 |
<input type="hidden" name="action" value="update" /> <input
|
408 |
type="hidden" name="page_options"
|
409 |
+
value="tsa_on_flg,tsa_japanese_string_min_count,tsa_back_second,tsa_caution_message,tsa_error_message,tsa_ng_keywords,tsa_ng_key_error_message,tsa_must_keywords,tsa_must_key_error_message,tsa_tb_on_flg,tsa_tb_url_flg,tsa_block_ip_addresses,tsa_ip_block_from_spam_chk_flg,tsa_block_ip_address_error_message" />
|
410 |
<p class="submit">
|
411 |
<input type="submit" class="button-primary"
|
412 |
value="<?php _e('Save Changes') ?>" />
|