Movable Type 備忘録

 「スパムチェックによる制限のため…」エラー

  • Nov082009
  • Vote:
    http://bizcaz.com/archives/2009/11/08-170144.php
  • Categories: Plugins
  • Tags:
  • Social Bookmark

こんにちわ^^

Movable Type 5 が 11/26 にリリースされるようですね。

しばらく MT から離れてたら Movable Type 5.0 RC1 も公開されてました。

今回はマイナーバージョンアップではないようなので、テンプレートの構造代えなきゃいけないんだろうなぁと思うと、時間ないし、ちょと憂鬱なココロ。

さて、訪問者さんからのご連絡により気づいたのですが、メールフォームにて以下のようなエラーが発生してます。

スパムチェックによる制限のため、メールをお送りいただくことができません。

これは MailForm プラグインが Movable Type のスパムチェック機能を利用していて、そのスパムチェックでエラーと判断されたことによって表示されるメッセージです。
なので、SpamLookup プラグインを何とかすればいいのかなぁ…と安易に思いつつ Google で検索したところ対策らしき記事は見つけたのですが、スパムチェックの強度を緩めるような感じなので、今回はやむを得ず MailForm プラグインのスパムチェック機能を無効にすることで対応しました。

カスタマイズ

今回わたしが対策した内容は、プラグイン設定画面からスパムチェック機能の有無を選択できるようにしました。
これによりいつでもスパムチェック機能を行えるようにしています。

修正したファイルは以下の 3 つです。

  • plugins/MailForm/MailForm.pl
  • plugins/MailForm/lib/MailForm/L10N/ja.pm
  • plugins/MailForm/lib/MailForm.pm
  1. 追加オプションのローカライズ設定

    まずはこれから追加するオプションの日本語化を対策しておきます。
    plugins/MailForm/lib/MailForm/L10N/ja.pm をテキストエディタで開いて、以下のように変更します。

    plugins/MailForm/lib/MailForm/L10N/ja.pm / 158 行目

    1. 'Install' => 'インストール',
    2. 'Enable SpamLookup' => 'スパムチェック有無',
    3. 'If selected, enables checking of the spam mail of the include.' => 'スパムチェック機能の有効/無効を選択します。',

    青字の部分を追加して保存します。

  2. オプション機能の追加

    次にプラグイン画面からスパムチェック有無の選択をできるよう変更します。
    plugins/MailForm/MailForm.pl をテキストエディタで開いて以下のように修正してください。

    plugins/MailForm/MailForm.pl / 420 行目

    1.  
    2. <mtapp:setting
    3. id="EnableSpamLookup"
    4. label="<__trans phrase="Enable SpamLookup">"
    5. hint=""
    6. show_hint="0">
    7. <input type="checkbox" name="EnableSpamLookup" id="EnableSpamLookup" value="1" <TMPL_IF NAME=ENABLESPAMLOOKUP>checked="checked"</TMPL_IF> />
    8. <MT_TRANS phrase="If selected, enables checking of the spam mail of the include.">
    9. </mtapp:setting>

    青字の部分を追加します。
    そして、もう一箇所以下のように変更します。

    plugins/MailForm/MailForm.pl / 39 行目

    1. schema_version => '1.01',
    2. settings => new MT::PluginSettings([
    3. ['EnableSpamLookup', { Default => 1 }],
    4. ]),

    先ほどと同様に青字の部分を追加して保存します。

  3. スパムチェック切り替え

    最後にプラグイン設定画面から選択されたオプションによってスパムチェック有無を切り替えられるように変更します。
    plugins/MailForm/lib/MailForm.pm をテキストエディタで開いて、以下のように変更します。

    plugins/MailForm/lib/MailForm.pm / 264 行目

    1. # spam check
    2. my $cfg = $app->plugin->get_config_hash( 'blog:' . $blog_id );
    3. my $ena = $cfg->{EnableSpamLookup};
    4.  
    5. if ($ena) {
    6.     if (!$preview && !$iserror) {
    7.         my $text = $subject . "\n" . $body . "\n" . $ext_params_str;
    8.         $text = '' unless defined $text;
    9.         $text =~ tr/\r//d;
    10.         my $mdata = MT::Comment->new;
    11.         $mdata->ip($app->remote_ip);
    12.         $mdata->blog_id($blog_id);
    13.         $mdata->entry_id(0);
    14.         $mdata->author(remove_html($author));
    15.         $mdata->email(remove_html($email));
    16.         $mdata->url('');
    17.         $mdata->text($text);
    18.         $mdata->junk_status(0);
    19.         MT::JunkFilter->filter($mdata);
    20.         if ($mdata->is_junk ||
    21.             (defined($mdata->visible) && !$mdata->visible)) {
    22.             $iserror = 1;
    23.             $is_spam = 1;
    24.             push @errmsg, $app->plugin->translate("Your email is not allowed to send because of spam check.");
    25.         }
    26.     }
    27. }

    青字の部分を追加して保存します。

以上です。
これにより何らかの要因によりスパムチェックで引っかかってしまったメール送信ができるようになります。

ダウンロード

参考までに、わたしが修正したファイルをサーバに置きます。

 Trackback Pings(0)

No trackbacks found.

 Comments(19)

#1: Posted by haru @ November 8, 2009 [REPLY]
user-pic

こんばんは^^;

久しぶりの更新ですね。
最近更新されていないので心配してました。
これからも楽しみにして参考に差せてもらいます。

#2: Posted by Author Profile Page bzbellからharuへの返信 @ November 8, 2009 [REPLY]
user-pic

>>1 haru さん

ご無沙汰してます^^
haru さんお元気でしたかバイバイ
忙しかった日々が続いたことでブログの更新に間空いたら、何となくどうでもよくなっちゃって怠けてましたあせあせ

たまたま訪問者さんから質問があったことでメールフォームが動作してないことが発覚して既存のプラグインをカスタマイズした記事を書いたんですの。
そういえば haru さんとこは確かかっこいい Flash のメールフォームでしたね。
似たようなものを jQuery で作ってあげたことがあります。

ではでは。

#3: Posted by mayue @ November 11, 2009 [REPLY]
user-pic

こんにちは。
相変わらず、お忙しそうですね…。

夏ごろにajaxでweb拍手を動かしたいとご相談させていただき、アドバイスをいただいて作業をしていたんですが、どーしても躓いてしまったところ「サンプル作りましょうか」と言っていただけたので、お言葉に甘えてお願いをさせていただいたんですが…その後、お忙しそうだったので、状況確認などの連絡をせずに今になってしまいました…(。。;)

お時間のあるときで結構ですので、お返事いただけると大変嬉しいです。<躓いた状態のままなので…(>

#4: Posted by きむとむ39 @ November 11, 2009 [REPLY]
user-pic

Pandora使わせてもらってます。ありがとうございます。
2つ質問ありますので、答えてもらえるとありがたいです。

1.h3タグを使って小見出しを出したいと思いますが、jpg画像をベースにして白字で文字を入れる方法でcssを変えるにはどう書き換えたらよいですか?

2.アスキー文字でトラバのURLを出す方法は無いものでしょうか?

お忙しいでしょうが、暇がありましたらお答えお願いします。

#5: Posted by Author Profile Page bzbellからきむとむ39への返信 @ November 11, 2009 [REPLY]
user-pic

>>4 きむとむ39 さん

こんばんわ^^

  1. h3 タグの背景に jpg 画像を、文字は白文字…ということですね。では、以下のようにしてみてください。

    h3 {
    height: 20px;
    line-height: 20px;
    background: url(●●●.jpg) repeat-x left top;
    color: rgb(255, 255, 255);
    }
    

    既存の CSS ファイル内から h3 を検索して、上記をその下に追加して頂けたらと思います。

  2. これの言わんとしてることが良く分からなくってあせあせ
    すいません。もう少し分かりやすく説明していただけますか。

#6: Posted by Author Profile Page bzbellからmayueへの返信 @ November 11, 2009 [REPLY]
user-pic

>>3 mayue さん

こんばんわ^^

うわぁ~めっちゃ失礼な事してしまいました。
すいませんエーン
週末に対応させてください。ホントすいませんぺこり

#7: Posted by きむとむ29 @ November 12, 2009 [REPLY]
user-pic

>>5 bzbell さん
トラバのURLをエンコードしたいんですよー。
たとえばここのトラバのURLは
http://bizcaz.com/mt/mt-memo_89935751765767.cgi/991
ですね。
これをソースで
http%3a%2f%2fbizcaz%2ecom%2fmt%2fmt%2dmemo_89935751765767%2ecgi%2f991
と出るようにしたら、クローラーが読めないから迷惑トラバが撃退出来る!
のではないかと考えたのですが、言ってる事分かりますか?

#8: Posted by Author Profile Page bzbellからきむとむ29への返信 @ November 14, 2009 [REPLY]
user-pic

>>7 きむとむ29 さん

こんにちわ^^

実体参照文字に変換したわけですね。
それでしたら doEntity プラグインというものがあります。
http://bizcaz.com/archives/2006/08/13-104049.php

#9: Posted by Author Profile Page bzbellからmayueへの返信 @ November 14, 2009 [REPLY]
user-pic

>>3 mayue さん

こんにちわ^^

すいません、WEB 拍手の CGI を配布してるサイトと mayue さんが設置された URL をもう一度教えて頂けますか。
探したのですが、ちょと見つからなかったのであせあせ
すいませんぺこり

#10: Posted by mayueからbzbellへの返信 @ November 16, 2009 [REPLY]
user-pic

>>9 bzbell さん

こんにちは。
お忙しいところすいません。そして、お返事遅くなりました…。

ページとスクリプトですが、以下になります。

テストで設置しているページ↓
http://studio.verse.jp/xxxtest/test.php
※テスト1のをベースにサイトでは、1拍手のみ、コメント送信不可のメッセージを出してます。

web拍手配布先↓
http://www.gnbnet.com/patipati/

よろしくお願いしますm(_ _)m

#11: Posted by Author Profile Page bzbellからmayueへの返信 @ November 17, 2009 [REPLY]
user-pic

>>10 mayue さん

お手数おかけしましたあせあせ
では、後ほど…。

#12: Posted by mayueからbzbellへの返信 @ November 21, 2009 [REPLY]
user-pic

>>11 bzbell さん

きゃー、書き込んだあと確認できてませんでした…。
お手数おかけしますがどうぞよろしくお願いしますー。

#13: Posted by Author Profile Page bzbellからmayueへの返信 @ November 22, 2009 [REPLY]
user-pic

>>12 mayue さん

こんばんわ^^

さきほど mayue さん宅に Ajax 化したスクリプトをメールで送信しましたのでご確認くださいませぺこり
一応カンタンではありますが説明文も入れてます。不明点などありましたらご連絡頂けたらと思いますもじもじ

#14: Posted by mayueからbzbellへの返信 @ November 25, 2009 [REPLY]
user-pic

>>13 bzbell さん
こちらへの書き込みもありがとうございます。
メールもさせていただきましたが、最終的に無事に動作いたしましたー!

ありがとうございましたw
これからもお世話になるかと思うのですが、よろしくお願いします。

#15: Posted by hudou @ January 7, 2010 [REPLY]
user-pic

はじめましてhudouと申します。

藤本さんのメールフォームプラグイン2.10の設置で、まさにこの記事のタイトル通り
「スパムチェックによる制限のため、メールをお送りいただくことができません」
の送信エラーで設置作業が進まずに困っておりまして色々調べておりましたところ
こちらさまに辿り着いた次第です。

早速、修正追加の必要なファイルは以下の 3 つを(修正追加は4箇所)実施したのですが
・plugins/MailForm/MailForm.pl
・plugins/MailForm/lib/MailForm/L10N/ja.pm
・plugins/MailForm/lib/MailForm.pm

私のパソコンがおかしいのか、文中に「青字の部分を追加して保存します」とありますが
青字の表示になっておりませんので、とりあえず全てそのままコピーして貼り付けてみました。
しかし結果的にテスト送信をやっても「このファイルを開きますか」とかいうようなウィンドウが
出てきてしまい思う結果、つまりテスト送信が出来ない状態です。

MTのバージョンは4.261でさくらのサーバで運用、拡張子HTMLのままPHP化をやっております。

何か解決方法、知恵は有りますでしょうか。
宜しくお願い致します。

#16: Posted by Author Profile Page bzbell @ January 7, 2010 [REPLY]
user-pic

>>15 hudou さん

こんばんわ^^

配色用に CSS を修正しました。
青字の部分をご確認ください。
参考までに、MT5 用の MailForm では記事中の修正は行わなくっても利用できますワクワク

#17: Posted by hudouからbzbellへの返信 @ January 10, 2010 [REPLY]
user-pic

>>16 bzbell さん
hudouです。
遅くなり申し訳有りません
返信ありがとうございます。

> 配色用に CSS を修正しました。
> 青字の部分をご確認ください。

ありがとうございます。

早速試して見たのですところ、やはり同じ状態なのです。

修正記述箇所のところで、一箇所エントリーのものと違い気になっていたのですが

「2.オプション機能の追加」の「plugins/MailForm/MailForm.pl / 420 行目」なのですが

私のものを見ますと ---------------------------------- # config template sub mf_blog_config_template { my $app = MT->instance; my $blog_id = $app->param('blog_id'); return ?__mode=fjmf_install_template_setup&blog_id=${blog_id}'; return false;" accesskey="s" title="" class="primary-button" style="color : white; font-weight : bold;" > #この部分が420行目となっております。 HERE }

# upgrade function from 2.0 (schema version 1.0) to 2.1 (schema version 1.01)
--------------------------------------------
上記のように420行目は、の部分となっておりますので
このの上から順番に下の方に指摘の追加部分を貼ってはずらしという感じで試したのですが結果は同じでした。

この部分が問題なのでしょうか。
度々申し訳ありませんが、お知恵をお貸し下さいませんでしょうか。
お忙しい中申し訳ありませんが、宜しくお願い致します。

#18: Posted by Author Profile Page bzbellからhudouへの返信 @ January 10, 2010 [REPLY]
user-pic

>>17 hudou さん

こんばんわ^^

先ほど hudou さん宅に ver2.10b の MailForm プラグインをカスタマイズした ZIP ファイルをメルしました。
ご確認頂けたらと思いますぺこり

#19: Posted by hudouからbzbellへの返信 @ January 10, 2010 [REPLY]
user-pic

>>18 bzbell さん

hudouです
度々申し訳ありません。

送って頂きました修正版にてプラグイン内のMailFormの設定の部分の表示が
有効になっていなかったようで先ほど「スパムチェック有無」のチェックボックスが
表示されました。

そのチェックボックスのチェックを外しテスト送信しましたところ
無事送信することが出来ました。

こちらの見落としでお手数をお掛けしまして申し訳ありませんでした。

有益な情報発信に感謝いたします。
今後とも宜しくお願いいたします。

本当に助かりました。
ありがとうございます。

 Post a Comment

 

コメント用フィード