我有一个奇怪的问题,让我说我在wordpress的后端创建一个名为“Favorite Foods”的新部分,其中包含“Location”,“Food”,“Verified”字段。注册到我网站的人将成为编辑但是而不是被引导到后端被重定向到一个页面,其中填写的表格与标有“收藏的食物”的部分相同,但“已验证”的布尔项目除外。这些编辑可以从我创建的那些页面中填写此信息在wordpress中填充该部分?如果批准/拒绝它们应该只是一个是/否编辑。但如果这是可能的话,有人可以指向我将表格链接到wordpress部分的方向。
谢谢。
答案 0 :(得分:2)
我在一年多前做过类似的事情,用户可以将他们的公司发布为新的WordPress项目。我这样做的方式是这样的:
functions.php
创建一个运行的函数,如果有任何发布的数据pending
,以便新帖子不会立即发布这样,您可以批准后端的新帖子。您的用户也不需要具有“编辑”状态/用户角色(您不想这样做!!)。
让用户访问后端是一个非常微妙的话题。请务必阅读nonces并实施类似验证码的内容,以提供基本安全性并避免发送垃圾邮件。
答案 1 :(得分:0)
我使用前端编辑器做了一个项目。您必须维护访问权限(角色管理) 正如@martinczerwi也说的一样。
if(isset($_POST['submitted']) && isset($_POST['post_nonce_field']) && wp_verify_nonce($_POST['post_nonce_field'], 'post_nonce')) {
$cpostStatus = 'draft';
if(isset($_POST['proStatus'])){
$cpostStatus = trim($_POST['proStatus']);
}
if(trim($_POST['projectName']) == '') {
$projectNameError = 'Please enter a Project Name.';
$hasError = true;
} else {
$projectName = trim($_POST['projectName']);
}
if(!$hasError){
$post_information = array(
'post_title' => esc_attr(strip_tags($_POST['projectName'])),
'post_content' => esc_attr(strip_tags($_POST['projectDescription'])),
'post-type' => 'post',
'post_status' => $cpostStatus
);
**$post_id = wp_insert_post($post_information);**
if($post_id)
{
// Update Custom Meta - your custom data
update_post_meta($post_id, 'citerp_start_date', esc_attr(strip_tags($_POST['startDate'])));
// Redirect
wp_redirect( home_url('/projects') ); exit;
}
}
}
$post_information = array(
'ID' => $current_post,
'post_title' => esc_attr(strip_tags($_POST['projectName'])),
'post_content' => esc_attr(strip_tags($_POST['projectDescription'])),
'post-type' => 'post',
'post_status' => $cpostStatus
);
$post_id = wp_update_post($post_information);