送信時にメールをトリガーするフォームがありますが、送信時に別のページにリダイレクトしたいと思います。
現時点では、電子メールは次の内容でのみ送信されます(つまり、同じページをリロードします)。
<form id="customisesystem" name="enquiry" onsubmit="return formCheck(this);" method="POST" action="<?php echo the_permalink(); ?>">
これを次のように変更したいと思います。
<form id="customisesystem" name="enquiry" onsubmit="return formCheck(this);" method="POST" action="<?php bloginfo('url'); ?>/thank-you">
ただし、これは電子メールをトリガーしません。
誰かが何が悪いのか見ることができますか?
これは、電子メールを送信するスクリプトです。
<? if(isset($_POST['submit'])) {
$to = "rob@domain.com";
$header = 'From: admin@domain.com';
$subject = "Quotation";
$enquiry_first_name = $_POST['enquiryfirstname'];
$enquiry_last_name = $_POST['enquirylastname'];
$enquiry_title = $_POST['enquirytitle'];
$enquiry_organisation = $_POST['enquiryorganisation'];
$enquiry_address = $_POST['enquiryaddress'];
$enquiry_country = $_POST['enquirycountry'];
$enquiry_email_address = $_POST['enquiryemailaddress'];
$enquiry_telephone = $_POST['enquirytelephone'];
$enquiry_additional_comments = $_POST['enquiryadditionalcomments'];
$enquiry_product = get_the_title();
if(!empty($_POST['hardware'])) {
foreach($_POST['hardware'] as $check) {
$hardwareresults .= $check."\n";
}
}
if(!empty($_POST['systems'])) {
foreach($_POST['systems'] as $check) {
$systemsresults .= $check."\n";
}
}
$productresults = "";
$quantities = array_combine($_POST['product'], $_POST['quantity']);
foreach ($quantities as $product => $quantity) {
if ($quantity > 0) {
$productresults .= "$quantity x $product \n";
}
}
$body = "You have a quote request from the website:
Name: $enquiry_title $enquiry_first_name $enquiry_last_name
Type of organisation: $enquiry_organisation
Address: $enquiry_address, $enquiry_country
E-Mail: $enquiry_email_address
Tel: $enquiry_telephone
Comments: $enquiry_additional_comments
Send more information on:
$systemsresults
Quotation:
$enquiry_product
Hardware:
$hardwareresults
Accessories:
$productresults
Kind regards";
mail($to, $subject, $body, $header);
echo "Thank you for your enquiry.";
} ?>