Я просто создаю простую контактную форму, но замечаю, что она, похоже, публикуется на неверной странице. URL-адрес в браузере правильный, но заголовок страницы «Страница не найдена»
в верхней части страницы
$emailed = false;
if (isset($_POST['submit'])) {
wp_mail('example@example.com', $_POST['subject'], $_POST['content']);
$emailed = true;
}
ниже ... HTML:
<form action="<?php the_permalink(); ?>" method="post" id="contactform">
<div class="formelem">
<label for="name">Name</label>
<input type="text" name="name" class="required" />
</div>
<div class="formelem">
<label for="email">Email</label>
<input type="text" name="email" class="required email" />
</div>
<div class="formelem">
<label for="subject">Subject</label>
<input type="text" name="subject" class="required" />
</div>
<div class="formelem">
<label for="content">Content</label>
<textarea name="content" cols="30" rows="10" class="required"></textarea>
</div>
<input type="submit" value="Submit Message" name="submit" value="submit" />
</form>
theme-development
forms
404-error
JM на работе
источник
источник
Ответы:
Я могу ошибаться, но я смутно помню, что: WordPress захватывает имя, электронную почту для отправки комментариев, если вы переименовали элементы формы в contact-name и contact-email, у вас возникает та же проблема?
источник
Это не только
name
илиemail
проблема, как писал Том. У меня была проблема даже с полем ввода с атрибутом имени, таким же, как один из моих пользовательских типов постов. Например:А когда вы зарегистрировали CPT-фильм, где-нибудь еще, отправка вашей формы закончится с ошибкой 404.
Вывод: не используйте
name
,email
а вany registered custom post type handle
качестве входного значения атрибута name в ваших формах.источник
Попробуйте изменить
name="email"
что-то вродеname="my_theme_email"
, сделайте то же самое со всеми вашими полями, звучит так, как будто некоторые имена зарезервированы в WordPress при отправке данных формы. У меня та же проблема, и я исправил ее вот так.источник
Это работает для меня, просто изменил ваш
Это сработает. Спасибо.
источник