Version Description
= 2.0 = IP IP
= 1.4 =
NG
= 1.3 =
= 1.2.1 =
= 1.2 = 1
= 1.1 =
= 1.0 =
Download this release
Release Info
Developer | tsato |
Plugin | Throws SPAM Away |
Version | 2.7.1 |
Comparing to | |
See all releases |
Code changes from version 2.7 to 2.7.1
- readme.txt +7 -1
- throws_spam_away.class.php +23 -27
- throws_spam_away.php +1 -1
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://gti.jp/throws-spam-away
|
|
4 |
Tags: comments, spam
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 4.3.1
|
7 |
-
Stable tag: 2.7
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
@@ -82,6 +82,12 @@ IPアドレスの指定「ブロックリスト」「ホワイトリスト」共
|
|
82 |
※コメント投稿時のスパムコメント対応の煩わしさが原因で作ったものですのでスパム判定されたコメントを保持しておりません。
|
83 |
|
84 |
-- これまでの変更点について
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
・バージョン 2.7
|
86 |
2015/10/24
|
87 |
スパム判定メソッドを整理し外部から利用できるようにした。
|
4 |
Tags: comments, spam
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 4.3.1
|
7 |
+
Stable tag: 2.7.1
|
8 |
License: GPLv2 or later
|
9 |
License URI: http://www.gnu.org/licenses/gpl-2.0.html
|
10 |
|
82 |
※コメント投稿時のスパムコメント対応の煩わしさが原因で作ったものですのでスパム判定されたコメントを保持しておりません。
|
83 |
|
84 |
-- これまでの変更点について
|
85 |
+
・バージョン 2.7.1
|
86 |
+
2015/11/16
|
87 |
+
スパム判定の初期値設定を判定メソッド内部に移動。
|
88 |
+
外部からの利用時にThrows SPAM Away 側の設定が活用できるようにした。
|
89 |
+
mb_split 関数を explode に変更
|
90 |
+
|
91 |
・バージョン 2.7
|
92 |
2015/10/24
|
93 |
スパム判定メソッドを整理し外部から利用できるようにした。
|
throws_spam_away.class.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* <p>ThrowsSpamAway</p> Class
|
5 |
* WordPress's Plugin
|
6 |
* @author Takeshi Satoh@GTI Inc. 2015
|
7 |
-
* @version 2.7
|
8 |
*/
|
9 |
class ThrowsSpamAway {
|
10 |
|
@@ -254,7 +254,7 @@ class ThrowsSpamAway {
|
|
254 |
if ( $white_ip_addresses != NULL && $white_ip_addresses != '' ) {
|
255 |
// 改行区切りの場合はカンマ区切りに文字列置換後リスト化
|
256 |
$white_ip_addresses = str_replace( "\n", ',', $white_ip_addresses );
|
257 |
-
$ip_list =
|
258 |
foreach ( $ip_list as $_ip ) {
|
259 |
// 指定IPが範囲指定の場合 例:192.168.1.0/24
|
260 |
if ( strpos( $_ip, '/' ) != FALSE ) {
|
@@ -330,15 +330,25 @@ class ThrowsSpamAway {
|
|
330 |
global $default_url_count_check_flg; // URL数を制御するか初期設定値
|
331 |
global $default_ok_url_count; // 制限する場合のURL数初期設定値
|
332 |
global $default_japanese_string_min_count; // 日本語文字最小含有数
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
333 |
|
334 |
$validate_array = array_merge(array(
|
335 |
'post_id' => NULL,
|
336 |
'tsa_on_flg' => $default_on_flg,
|
337 |
-
'tsa_japanese_string_min_count' =>
|
338 |
-
'tsa_ng_keywords' =>
|
339 |
-
'tsa_must_keywords' =>
|
340 |
-
'tsa_url_count_check' => $
|
341 |
-
'tsa_ok_url_count' => $
|
342 |
), $validate_array );
|
343 |
|
344 |
$post_id = @$validate_array['post_id'];
|
@@ -416,7 +426,7 @@ class ThrowsSpamAway {
|
|
416 |
}
|
417 |
// 日本語文字列チェック抜けたらキーワードチェックを行う
|
418 |
if ( $tsa_ng_keywords != '' ) {
|
419 |
-
$keyword_list =
|
420 |
foreach ( $keyword_list as $key ) {
|
421 |
if ( preg_match('/'.trim( $key ).'/u', $author.$comment) ) {
|
422 |
$this->error_type = NG_WORD;
|
@@ -426,7 +436,7 @@ class ThrowsSpamAway {
|
|
426 |
}
|
427 |
// キーワードチェック(ブラックリスト)を抜けたら必須キーワードチェックを行う
|
428 |
if ( $tsa_must_keywords != '' ) {
|
429 |
-
$keyword_list =
|
430 |
foreach ( $keyword_list as $key ) {
|
431 |
if ( preg_match( '/'.trim( $key ).'/u', $author.$comment ) ) {
|
432 |
// OK
|
@@ -491,7 +501,7 @@ class ThrowsSpamAway {
|
|
491 |
if ( $block_ip_addresses != NULL && $block_ip_addresses != '' ) {
|
492 |
// 改行区切りの場合はカンマ区切りに文字列置換後リスト化
|
493 |
$block_ip_addresses = str_replace( "\n", ',', $block_ip_addresses );
|
494 |
-
$ip_list =
|
495 |
foreach ( $ip_list as $ip ) {
|
496 |
// 指定IPが範囲指定の場合 例:192.168.1.0/24
|
497 |
if ( strpos( $ip, '/' ) != FALSE ) {
|
@@ -661,28 +671,14 @@ class ThrowsSpamAway {
|
|
661 |
return FALSE;
|
662 |
}
|
663 |
}
|
664 |
-
//
|
665 |
-
$tsa_japanese_string_min_count = get_option( 'tsa_japanese_string_min_count', $default_japanese_string_min_count );
|
666 |
-
// NGキーワード文字列群
|
667 |
-
$tsa_ng_keywords = get_option( 'tsa_ng_keywords', '' );
|
668 |
-
// キーワード文字列群 ※ブラックリストと重複するものはブラックリストのほうが優先です。
|
669 |
-
$tsa_must_keywords = get_option( 'tsa_must_keywords', '' );
|
670 |
-
// URL数チェック
|
671 |
-
$tsa_url_count_check = get_option( 'tsa_url_count_on_flg', $default_url_count_check_flg );
|
672 |
-
// 許容URL数設定値
|
673 |
-
$tsa_ok_url_count = intval( get_option( 'tsa_ok_url_count', $default_ok_url_count ) ); // デフォルト値3(3つまで許容)
|
674 |
|
|
|
675 |
return $this->validate_comment(
|
676 |
$author,
|
677 |
$comment,
|
678 |
array(
|
679 |
'post_id' => $post_id,
|
680 |
-
'tsa_on_flg' => $tsa_on_flg
|
681 |
-
'tsa_japanese_string_min_count' => $tsa_japanese_string_min_count,
|
682 |
-
'tsa_ng_keywords' => $tsa_ng_keywords,
|
683 |
-
'tsa_must_keywords' => $tsa_must_keywords,
|
684 |
-
'tsa_url_count_check' => $tsa_url_count_check,
|
685 |
-
'tsa_ok_url_count' => $tsa_ok_url_count
|
686 |
)
|
687 |
);
|
688 |
}
|
@@ -1338,7 +1334,7 @@ function addIpAddresses(newAddressStr) {
|
|
1338 |
// ブラックIPリスト
|
1339 |
$block_ip_addresses_str = get_option( 'tsa_block_ip_addresses', '');
|
1340 |
$block_ip_addresses = str_replace("\n", ",", $block_ip_addresses_str);
|
1341 |
-
$ip_list =
|
1342 |
|
1343 |
$act = ( isset( $_POST['act'] ) ? esc_attr( $_POST['act'] ) : NULL );
|
1344 |
|
4 |
* <p>ThrowsSpamAway</p> Class
|
5 |
* WordPress's Plugin
|
6 |
* @author Takeshi Satoh@GTI Inc. 2015
|
7 |
+
* @version 2.7.1
|
8 |
*/
|
9 |
class ThrowsSpamAway {
|
10 |
|
254 |
if ( $white_ip_addresses != NULL && $white_ip_addresses != '' ) {
|
255 |
// 改行区切りの場合はカンマ区切りに文字列置換後リスト化
|
256 |
$white_ip_addresses = str_replace( "\n", ',', $white_ip_addresses );
|
257 |
+
$ip_list = explode( ',', $white_ip_addresses );
|
258 |
foreach ( $ip_list as $_ip ) {
|
259 |
// 指定IPが範囲指定の場合 例:192.168.1.0/24
|
260 |
if ( strpos( $_ip, '/' ) != FALSE ) {
|
330 |
global $default_url_count_check_flg; // URL数を制御するか初期設定値
|
331 |
global $default_ok_url_count; // 制限する場合のURL数初期設定値
|
332 |
global $default_japanese_string_min_count; // 日本語文字最小含有数
|
333 |
+
//
|
334 |
+
$_japanese_string_min_count = get_option( 'tsa_japanese_string_min_count', $default_japanese_string_min_count );
|
335 |
+
// NGキーワード文字列群
|
336 |
+
$_ng_keywords = get_option( 'tsa_ng_keywords', '' );
|
337 |
+
// キーワード文字列群 ※ブラックリストと重複するものはブラックリストのほうが優先です。
|
338 |
+
$_must_keywords = get_option( 'tsa_must_keywords', '' );
|
339 |
+
// URL数チェック
|
340 |
+
$_url_count_check = get_option( 'tsa_url_count_on_flg', $default_url_count_check_flg );
|
341 |
+
// 許容URL数設定値
|
342 |
+
$_ok_url_count = intval( get_option( 'tsa_ok_url_count', $default_ok_url_count ) ); // デフォルト値3(3つまで許容)
|
343 |
|
344 |
$validate_array = array_merge(array(
|
345 |
'post_id' => NULL,
|
346 |
'tsa_on_flg' => $default_on_flg,
|
347 |
+
'tsa_japanese_string_min_count' => $_japanese_string_min_count,
|
348 |
+
'tsa_ng_keywords' => $_ng_keywords,
|
349 |
+
'tsa_must_keywords' => $_must_keywords,
|
350 |
+
'tsa_url_count_check' => $_url_count_check,
|
351 |
+
'tsa_ok_url_count' => $_ok_url_count
|
352 |
), $validate_array );
|
353 |
|
354 |
$post_id = @$validate_array['post_id'];
|
426 |
}
|
427 |
// 日本語文字列チェック抜けたらキーワードチェックを行う
|
428 |
if ( $tsa_ng_keywords != '' ) {
|
429 |
+
$keyword_list = explode( ',', $tsa_ng_keywords );
|
430 |
foreach ( $keyword_list as $key ) {
|
431 |
if ( preg_match('/'.trim( $key ).'/u', $author.$comment) ) {
|
432 |
$this->error_type = NG_WORD;
|
436 |
}
|
437 |
// キーワードチェック(ブラックリスト)を抜けたら必須キーワードチェックを行う
|
438 |
if ( $tsa_must_keywords != '' ) {
|
439 |
+
$keyword_list = explode( ',', $tsa_must_keywords );
|
440 |
foreach ( $keyword_list as $key ) {
|
441 |
if ( preg_match( '/'.trim( $key ).'/u', $author.$comment ) ) {
|
442 |
// OK
|
501 |
if ( $block_ip_addresses != NULL && $block_ip_addresses != '' ) {
|
502 |
// 改行区切りの場合はカンマ区切りに文字列置換後リスト化
|
503 |
$block_ip_addresses = str_replace( "\n", ',', $block_ip_addresses );
|
504 |
+
$ip_list = explode( ',', $block_ip_addresses );
|
505 |
foreach ( $ip_list as $ip ) {
|
506 |
// 指定IPが範囲指定の場合 例:192.168.1.0/24
|
507 |
if ( strpos( $ip, '/' ) != FALSE ) {
|
671 |
return FALSE;
|
672 |
}
|
673 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
674 |
|
675 |
+
// コメントの内容に関するバリデーション
|
676 |
return $this->validate_comment(
|
677 |
$author,
|
678 |
$comment,
|
679 |
array(
|
680 |
'post_id' => $post_id,
|
681 |
+
'tsa_on_flg' => $tsa_on_flg
|
|
|
|
|
|
|
|
|
|
|
682 |
)
|
683 |
);
|
684 |
}
|
1334 |
// ブラックIPリスト
|
1335 |
$block_ip_addresses_str = get_option( 'tsa_block_ip_addresses', '');
|
1336 |
$block_ip_addresses = str_replace("\n", ",", $block_ip_addresses_str);
|
1337 |
+
$ip_list = explode( ",", $block_ip_addresses );
|
1338 |
|
1339 |
$act = ( isset( $_POST['act'] ) ? esc_attr( $_POST['act'] ) : NULL );
|
1340 |
|
throws_spam_away.php
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
Plugin URI: http://gti.jp/throws-spam-away/
|
5 |
Description: コメント内に日本語の記述が存在しない場合はあたかも受け付けたように振る舞いながらも捨ててしまうプラグイン
|
6 |
Author: 株式会社ジーティーアイ さとう たけし
|
7 |
-
Version: 2.7
|
8 |
Author URI: http://gti.jp/
|
9 |
License: GPL2
|
10 |
*/
|
4 |
Plugin URI: http://gti.jp/throws-spam-away/
|
5 |
Description: コメント内に日本語の記述が存在しない場合はあたかも受け付けたように振る舞いながらも捨ててしまうプラグイン
|
6 |
Author: 株式会社ジーティーアイ さとう たけし
|
7 |
+
Version: 2.7.1
|
8 |
Author URI: http://gti.jp/
|
9 |
License: GPL2
|
10 |
*/
|