今日は、WordPressにお問い合わせページを追加しようと色々調べてみました。
「お問い合わせページはプラグインを使えばあっという間です」という記事が多い中、
プラグインが色んなアップグレードで動かなくなる懸念というか、
今までけっこう痛い目見てきたので、自分で作ることにした。
簡易的なので超簡単。(セキュリティ度外視)
<?php
?>
<!DOCTYPE html>
<html class="no-js" lang="ja">
<head>
<title>お問い合わせページ</title>
</head>
<body>
お名前・メールアドレス・お問い合わせ内容を入力して送信ボタンを押してください。<br /><br />
<form method="POST" action="contactComplete.php">
お名前(必須):<input type="text" name="name" required></br>
メールアドレス(必須):<input type="email" name="email" required></br>
メールアドレス(確認)(必須):<input type="email2" name="email2" required></br>
お問い合わせ:<textarea rows="10" cols="60" name="toiawase" ></textarea><br />
<input type="submit" value="送信"><br />
</form>
</body>
</html>
まずは上記のようなphpファイルを書く。
このphpファイルをとりあえずWordPressのフォルダに配置。
![](https://terano.tech/wp-content/uploads/2021/07/image-5.png)
次にメニューに追加してみる。
![](https://terano.tech/wp-content/uploads/2021/07/image-1.png)
ここのカスタムリンクから作成。
![](https://terano.tech/wp-content/uploads/2021/07/image-2.png)
![](https://terano.tech/wp-content/uploads/2021/07/image-3.png)
これでメニューに追加されたはず。(サンプルページがまだ残ってるwww
![](https://terano.tech/wp-content/uploads/2021/07/image-4-1024x117.png)
サンプルページを削除して、メニューを保存したら、メニューに出てきたのでクリック。
![](https://terano.tech/wp-content/uploads/2021/07/image-6.png)
おお、不細工ながらお問い合わせフォームが出来ている!
では今度は送信ボタンを押した時に飛ぶ、お問い合わせ完了画面を作っていこう。
<?php
mb_language("Japanese");
mb_internal_encoding("UTF-8");
$from = $_POST['email'];
$name = $_POST['name'];
$toiawase = $_POST['toiawase'];
$from_mail = "info@terano.tech";
$from_name = "terano.tech";
$header = '';
$header .= "Content-Type: text/plain \r\n";
$header .= "Return-Path: " . $from_mail . " \r\n";
$header .= "From: " . $from ." \r\n";
$header .= "Sender: " . $from ." \r\n";
$header .= "Reply-To: " . $from_mail . " \r\n";
$header .= "Organization: " . $from_name . " \r\n";
$header .= "X-Sender: " . $from_mail . " \r\n";
$header .= "X-Priority: 3 \r\n";
$title = "【terano.tech】お問い合わせ内容";
$message = "【お名前】" . $name . "【email】" . $from . "【お問い合わせ内容】" . $toiawase;
mb_send_mail("s.terano@gmail.com", $title, $message, $header);
?>
<html>
<head>
<title>お問い合わせ完了</title>
</head>
<body>
お問い合わせが完了しました。<br /><br />
折り返しメールにてご連絡させていただきます。<br />
今しばらくお待ちください。<br /><br />
<a href="https://terano.tech">トップページに戻る</a>
</body>
</html>
「ここは送りたいメールアドレス」となっている箇所は自分のメールアドレスを指定しよう。
今回はデータベースへお問い合わせ内容を格納したりせず、メールを飛ばすだけ。
このファイルをcontactComplete.phpというファイル名で先ほどと同じ場所へ配置。
![](https://terano.tech/wp-content/uploads/2021/07/image-8.png)
必要事項を入力して、送信ボタンを押してみる。
![](https://terano.tech/wp-content/uploads/2021/07/image-9.png)
おっ、無事に飛んだか!?
![](https://terano.tech/wp-content/uploads/2021/07/image-10.png)
飛んでいるじゃありませんか。
ガッキーからメールきた!
というわけで、とりあえずフォーム入力でメールを飛ばすところを書いてみました。
次回はこのセキュリティガバガバなお問い合わせフォームにちょっとセキュリティを気を付けた修正を行いたいと思います。