我创建了一个插件(简单形式),这是shortcode.php文件:
<?php
add_shortcode('contact_form','contact_form');
function contact_form(){
if (isset($_POST['submit'])){
global $wpdb, $table_prefix;
$name = $_POST['name'];
$data = array('name'=>$name,'message'=>'message');
$wpdb->insert($table_prefix.'contact_form',$data,array('%s','%s'));
echo 'added';
}
?>
<form method="POST" action="" id="contact_form">
Name: <input type="text" name="name"><br>
<input type="submit" name="submit" value="submit">
</form>
<?php
}
当我提交表单时,如果我在文本字段中写入,则表示“页面不存在”,但如果我将其留空,则提交表单。 问题是什么? 我在页面中使用了这个短代码。
答案 0 :(得分:0)
请参阅WordPress StackExchange网站上的this question。总之,WordPress被一个名为name
的字段搞糊涂了。尝试将其重命名为(例如)contact_name
。
加载更多细节here(也是wpse)。