防止通过前端帖子(Wp_INSERT_POST_)提交表单时帖子标题为空

时间:2012-05-08 作者:Adam

我正在从前端创建一个帖子,使用(为了简洁而缩短);

if (empty($_POST[\'my_title\'])){  
    echo \'error: please insert a title\';
} else {  
    $title =  $_POST[\'my_title\'];
} 

$new_post = array(
\'post_title\'    => $title,
\'post_status\'   => \'publish\',
\'post_type\'     => \'post\'

$pid = wp_insert_post($new_post);   
如果上没有帖子标题submit 然后表单返回错误消息,

error: please insert a title

但是WordPress仍然会插入标题为的帖子(no title).

有没有办法通过简单的PHP验证来防止wp_insert_post 从接受空值开始(不使用Javascript)

IMAGE

2 个回复
最合适的回答,由SO网友:Bainternet 整理而成

简单地说wp_insert_post 在条件检查中调用,以便仅在帖子标题不为空的情况下调用,如下所示:

if (empty($_POST[\'my_title\'])){  
    echo \'error: please insert a title\';
} else {  
    $title =  $_POST[\'my_title\'];
    $new_post = array(
     \'post_title\'    => $title,
     \'post_status\'   => \'publish\',
     \'post_type\'     => \'post\');
    $pid = wp_insert_post($new_post);  
} 

SO网友:Mateusz Hajdziony

或者你可以

return;
在回显错误后。:)

结束

相关推荐

Comment form validation

如何设置注释字段的验证规则?我更改了评论者姓名/电子邮件/主页onmouseover和onblur的值(我使用它而不是标签-因此如果字段为空,它会显示“您的电子邮件”、“您的主页”等)。问题是,在提交时,它会在主页字段中提交此文本(因为它没有验证,而不像电子邮件字段,如果您输入了除[email protected]).如何验证主页字段?