THE THOR(ザ・トール)のお問い合わせページに、へんなお問い合わせ、迷惑メールがきませんか?( ̄▽ ̄;)
私はここ最近ひどくなり、対策をすることにしました。
私の所に、1時間に1度くらいの頻度で来る問い合わせ(T_T)
「 Muchas gracias. Como puedo iniciar sesion? 」
なんて書いてあるのかわからなくて、Googleさんに翻訳してもらいました。
「どうもありがとう。 どうすればログインできますか?」
いや、ログインされたら困ります。
乗っ取りじゃないですか?!
色々なアドレスからきます。
そらは「パスワード(?)を入力出来たら問い合わせ出来る」ようにすることにしました。
どんなのにしたのかはこちら>>>>THE THOR(ザ・トール)のテンプレートを使用したお問い合わせ
同じように困っている人がいるだろうなぁと思ったので記事にしました。
今回もコピペ作業で出来るのですが、コピペする場所が普通は触らない場所になります( ̄▽ ̄;)
コピペする場所は親テーマのエディタです。
という訳で、これは自己責任でお願い致します!!
怖い!と思ったらバックアップをしてからコピペしてください。
私はサーバーのバックアップあるし、ま・いっか しましたが(笑)
記事最後にレンタルサーバーのバックアップ機能を紹介した記事のリンクを張っておきましたので、興味がある方は参考にしてみてください。
注意)
親テーマというのは、THE THOR(ザ・トール)がバージョンアップすると上書きされる可能性があります。
(THE THOR(ザ・トール)がバージョンアップしたら、もう一度コピペになります)
そして、コピペするときに気を付けていただきたいのが、もともとあるTHE THOR(ザ・トール)のコードを削除しないこと!
削除してしまうと、THE THOR(ザ・トール)の問い合わせがおかしくなってしまいます(;^_^A
THE THOR(ザ・トール)お問い合わせのコピペする場所
<外観>→<テーマエディタ>を順にクリックしてください。
テーマエディタまでクリックしたら、画面右にある「編集するテーマを選択」で「THE THOR」を選択してください。
画面右側にある「テーマファイル」のスクロールを下に動かして「お問い合わせTPL固定ページテンプレート」をクリックしてください。
ここにコピペしていきます(^^)/
THE THOR(ザ・トール)お問い合わせのコピペ文
張り付けるコードは2つ
①間違ったパスワード入力時のエラー処理コード
「$_POST[‘contactpass’] 」に入力された文字列が入っていますので、その文字列が「11」以外ならこうしてね(^^♪
という指示を出しています。
//問い合わせの入力なし
if(trim($_POST['contactpass']) !== '11') {
$passError = '間違っています';
$hasError = true;
} else {
if(function_exists('stripslashes')) {
$name = stripslashes(trim($_POST['contactpass']));
} else {
$name = trim($_POST['contactpass']);
}
}
②パスワードを入力してもらう指示の表示コード
ここはHTMLの表示部分になります。
<tr>
<th class="contactTable__header">
半角の「1」を2個入力してください<span class="required">必須</span>
</th>
<td class="contactTable__data">
<input type="text" name="contactpass"
value="<?php if(isset($_POST['contactpass']))
echo filter_input( INPUT_POST, 'contactpass', FILTER_SANITIZE_SPECIAL_CHARS );?>" />
<?php if(isset($passError)) : ?><span class="error">
<?php echo $passError;?></span><?php endif; ?>
</td>
</tr>
THE THOR(ザ・トール)お問い合わせのコードを張り付ける場所
ここからは、張り付ける場所を探す作業になります。
張り付けると、すべてのコード達がくっついて張り付けられてしまいます。
そのままでも実行されるのですが、見た目が気になる方は半角にしてから、ここに表示されているように改行をしてください。
①間違った時のエラー処理コードを張り付ける場所
張り付ける場所は,24行目付近にある「//名前の入力なし」を探してください。
この「//名前の入力なし」の上に張り付けます。
if(isset($_POST['submitted'])) {
//項目チェック
if(isset($_POST['checking'])) {
$captchaError = true;
} else {
ここに①を張り付けてください。
//名前の入力なし
if(trim($_POST['contactName']) === '') {
$nameError = '名前が入力されていません';
$hasError = true;
} else {
if(function_exists('stripslashes')) {
$name = stripslashes(trim($_POST['contactName']));
} else {
$name = trim($_POST['contactName']);
}
}
②入力の表示のコードを張り付ける場所
「<table class=”contactTable”>」の下に張り付けます。
213行目付近にあるHTMLに②を張り付けます。
(①を張り付ける前なら、201行目付近でしょうか( ̄▽ ̄;))
<?php if(isset($emailSent) && $emailSent == true) { ?>
<?php echo $thanks; ?>
<?php } else { ?>
<?php the_content(); ?>
<form class="dividerTop" action="<?php the_permalink(); ?>" method="post">
<table class="contactTable">
ここに②を張り付けてください。
<tr>
<th class="contactTable__header">お名前
と②を張り付けた後に下にある「ファイルを更新」をクリックしてください。
入力してもらう文字の変更方法
//問い合わせの入力なし
「//」が先頭に付いた文はコメントです。
if(trim($_POST['contactpass']) !== '11') {
送られてきたパスワード(笑)のデータが半角数字の「11」かチェックしています。
この数字を自分の好きな数字or文字に変更してOKです。
$passError = '間違っています';
ここは間違った時に表示させる文を指定しています。
間違ったパスワード入力時の言葉を変えたい時はこの文を変更してください。
<th class="contactTable__header">
半角の「1」を2個入力してください<span class="required">必須</span></th>
入力するパスワードの指示の文を表示させています。
パスワードの指示を変える場合はこの「半角の「1」を2個入力してください」を変更してください。
CAPTCHAの仕組みを疑似しています(笑)
設定してから自分で必ず確認してください。
【THE THOR】Muchas gracias. Como puedo iniciar?お問い合わせのスパム対策 まとめ
コード達は半角です。
これは他のプログラム達と同じです。
「空白」や「改行」などに「全角」が無いように気を付けてください。
私はこのカスタマイズをしてからスパムのお問い合わせは来ていません。
2020/11/26 追記
私は入力してもらう文字の見本を画像にしてみました。
見てみたい方はこちら>>>>お問い合わせ
コメントのスパム対策はテーマをいじるなんてしなくても簡単に設定できます。
興味のある方はこちらをどうぞ(^^♪
【ザ・トール】スパムコメント対策&コメント非表示設定を紹介♪
コードを変更してもページを表示させると変更されない
コードを書き換えてテストをしてみよう~と思っても、記事を表示させると変更されてなくてテストにならないという時が・・・。
というか、毎回なります(笑)
面倒ですが、キャッシュクリアを毎回することをオススメします♪
私の副サイトで説明の記事を書きましたので、参考にしてみてください(^^♪
バックアップファイル♪コードを変更してエラーになったら必要かも
バックアップを自分で作成いない場合は、レンタルサーバーのバックアップをありがたく使わせていただきましょう(^^♪
私は、いつもお世話になっています。
ランキングに参加しているのでバナーをクリックしていただけると嬉しいです♪