Version Description
NG
Download this release
Release Info
Developer | tsato |
Plugin | Throws SPAM Away |
Version | 1.1 |
Comparing to | |
See all releases |
Code changes from version 1.0 to 1.1
- readme.txt +7 -1
- throws_spam_away.php +24 -13
readme.txt
CHANGED
@@ -4,7 +4,7 @@ Donate link: http://iscw.jp/
|
|
4 |
Tags: comments, spam
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 3.2.1
|
7 |
-
Stable tag: 1.
|
8 |
|
9 |
コメント内にマルチバイト文字が一つも存在しない場合あたかも受け付けたように振る舞いながらも無視
|
10 |
|
@@ -31,10 +31,16 @@ e.g.
|
|
31 |
|
32 |
== Changelog ==
|
33 |
|
|
|
|
|
|
|
|
|
34 |
= 1.0 =
|
35 |
新規作成
|
36 |
|
37 |
== Upgrade Notice ==
|
|
|
|
|
38 |
|
39 |
= 1.0 =
|
40 |
とりあえず作りました!
|
4 |
Tags: comments, spam
|
5 |
Requires at least: 3.1
|
6 |
Tested up to: 3.2.1
|
7 |
+
Stable tag: 1.1
|
8 |
|
9 |
コメント内にマルチバイト文字が一つも存在しない場合あたかも受け付けたように振る舞いながらも無視
|
10 |
|
31 |
|
32 |
== Changelog ==
|
33 |
|
34 |
+
= 1.1 =
|
35 |
+
マルチバイト文字が存在していても日本語文字列を含まないとNGとするよう
|
36 |
+
正規表現を入れて精査するように修正
|
37 |
+
|
38 |
= 1.0 =
|
39 |
新規作成
|
40 |
|
41 |
== Upgrade Notice ==
|
42 |
+
= 1.1 =
|
43 |
+
正規表現を使いロシア語や他のマルチバイト文字列を使用する言語からの攻撃に対応
|
44 |
|
45 |
= 1.0 =
|
46 |
とりあえず作りました!
|
throws_spam_away.php
CHANGED
@@ -1,12 +1,12 @@
|
|
1 |
<?php
|
2 |
/*
|
3 |
-
Plugin Name: Throws SPAM Away
|
4 |
-
Plugin URI: http://iscw.jp/wp/
|
5 |
-
Description: コメント内に日本語の記述が一つも存在しない場合はあたかも受け付けたように振る舞いながらも捨ててしまうプラグイン
|
6 |
-
Author: 株式会社アイ・エス・シー さとう たけし
|
7 |
-
Version: 1.
|
8 |
-
Author URI: http://iscw.jp/
|
9 |
-
*/
|
10 |
|
11 |
class ThrowsSpamAway {
|
12 |
var $version = '1.0';
|
@@ -18,29 +18,40 @@ class ThrowsSpamAway {
|
|
18 |
echo '<div id="throwsSpamAway">';
|
19 |
echo '日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)';
|
20 |
echo '</div>';
|
21 |
-
|
22 |
}
|
23 |
|
24 |
function comment_post($id) {
|
25 |
global $newThrowsSpamAway;
|
26 |
global $user_ID;
|
27 |
-
|
28 |
if( $user_ID ) {
|
29 |
return $id;
|
30 |
}
|
31 |
-
|
32 |
$comment = $_POST["comment"];
|
33 |
if ($newThrowsSpamAway->validation($comment)) {
|
34 |
return $id;
|
35 |
}
|
36 |
wp_die( __('日本語を含まない記事は投稿できませんよ。<script type="text/javascript">window.setTimeout(location.href = "'.$_SERVER['HTTP_REFERER'].'", 100);</script>', 'throws-spam-away'));
|
37 |
}
|
38 |
-
|
39 |
-
|
|
|
|
|
|
|
|
|
|
|
40 |
if (strlen(bin2hex($comment)) / 2 == mb_strlen($comment)) {
|
41 |
return false;
|
42 |
} else {
|
43 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
44 |
}
|
45 |
}
|
46 |
}
|
1 |
<?php
|
2 |
/*
|
3 |
+
Plugin Name: Throws SPAM Away
|
4 |
+
Plugin URI: http://iscw.jp/wp/
|
5 |
+
Description: コメント内に日本語の記述が一つも存在しない場合はあたかも受け付けたように振る舞いながらも捨ててしまうプラグイン
|
6 |
+
Author: 株式会社アイ・エス・シー さとう たけし
|
7 |
+
Version: 1.1
|
8 |
+
Author URI: http://iscw.jp/
|
9 |
+
*/
|
10 |
|
11 |
class ThrowsSpamAway {
|
12 |
var $version = '1.0';
|
18 |
echo '<div id="throwsSpamAway">';
|
19 |
echo '日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)';
|
20 |
echo '</div>';
|
21 |
+
return true;
|
22 |
}
|
23 |
|
24 |
function comment_post($id) {
|
25 |
global $newThrowsSpamAway;
|
26 |
global $user_ID;
|
27 |
+
|
28 |
if( $user_ID ) {
|
29 |
return $id;
|
30 |
}
|
31 |
+
|
32 |
$comment = $_POST["comment"];
|
33 |
if ($newThrowsSpamAway->validation($comment)) {
|
34 |
return $id;
|
35 |
}
|
36 |
wp_die( __('日本語を含まない記事は投稿できませんよ。<script type="text/javascript">window.setTimeout(location.href = "'.$_SERVER['HTTP_REFERER'].'", 100);</script>', 'throws-spam-away'));
|
37 |
}
|
38 |
+
|
39 |
+
/**
|
40 |
+
* 日本語が含まれているかチェックメソッド
|
41 |
+
* @param string $comment
|
42 |
+
*/
|
43 |
+
function validation($comment) {
|
44 |
+
// まずはシングルバイトだけならエラー
|
45 |
if (strlen(bin2hex($comment)) / 2 == mb_strlen($comment)) {
|
46 |
return false;
|
47 |
} else {
|
48 |
+
// マルチバイト文字が含まれている場合は日本語が含まれていればOK
|
49 |
+
$flg = false;
|
50 |
+
mb_regex_encoding('UTF-8');
|
51 |
+
if (preg_match('/[一-龠]+/u', $comment)){ $flg = true; }
|
52 |
+
if (preg_match('/[ァ-ヶー]+/u', $comment)){ $flg = true; }
|
53 |
+
if (preg_match('/[ぁ-ん]+/u', $comment)){ $flg = true; }
|
54 |
+
return $flg;
|
55 |
}
|
56 |
}
|
57 |
}
|