【发布时间】:2016-09-11 10:41:44
【问题描述】:
我已经为这个问题苦苦挣扎了几天,我真的希望你能帮助我。
我创建了一个插件,位于:
'/wp-content/plugins/my-cool-plugin'.
我的插件允许用户通过公共页面上的表单发布自定义帖子类型,基本上任何人都应该能够发布内容。 使用 jQuery,我在提交前端表单时收听,并使用 Ajax 将数据从表单传递到 php 文件以将其处理成帖子。 该文件位于:
'/wp-content/plugins/my-cool-plugin/inc/processor.php'。
以下是我的处理器文件的内容:
$var1= $_POST['some'];
$var2= $_POST['data'];
$new_post = array(
'post_type' => 'my_custom_post',
'post_status' => 'publish',
'mcp_1' => $var1,
'mcp_2' => $var2
);
$post_id = wp_insert_post( $new_post, $wp_error );
if ($wp_error == 'false'){
$post_url = get_permalink( $post_id );
echo $post_url;
}else {
// some sort of error
}
当我测试我的表单时,它会导致以下错误:
调用未定义的函数 wp_insert_post() 在线 ... 这是以下行:
$post_id = wp_insert_post( $new_post, $wp_error );
由于我不再在 WordPress 的“范围”内,我是否需要添加一些内容? 还是有另一种(更好的)从前端表单插入自定义帖子的方法?
【问题讨论】:
标签: ajax wordpress frontend custom-post-type