您的代码中存在一个主要问题:
1-您必须使用<form>
当您想要提交数据时,无论您使用什么系统(wordpress、EE、php、html…)。
2-如果要检查页面是否已提交或刚访问而未提交,必须将条件更改为:
if(!empty($_POST)){
或
if($_POST){
3-如果在提交过程后刷新页面时试图避免重新发送Post数据,则必须在条件中添加重定向代码。
4-移动此$thisid = wp_insert_post ( $post, true);
在条件内,因此仅当存在$\\u post数据并删除时,才会添加postwp_insert_post($thisid);
来自else语句。
4-关于add_post_meta
在您的代码中,您使用wp\\u insert\\u post,因此您的代码要添加一个新的帖子,然后向该帖子添加一个新的meta,因此如果您转到新帖子并找到meta字段,这会告诉您add_post_meta
正在工作。注意:可以将同一行添加两次,以查看add_post_meta
添加两个元字段。
add_post_meta( $thisid, \'field_123123eee12312\', $column2);
add_post_meta( $thisid, \'field_123123eee12312\', $column2);
因此,您的代码将如下所示:
<form action="" method="post">
--- Your Fields -----
<input type="submit" value="Test" id="submit">
</form>
------------PHP代码---------
if(!empty($_POST)){
$thisid = wp_insert_post ( $post, true);
if ( is_wp_error($thisid) ) {
return get_error_codes();
echo "not ok";
}else{
add_post_meta( $thisid, \'field_123123eee12312\', $column2);
echo "ok";
}
}
试试看,让我知道。
尊敬的。