Upload images with comment

时间:2012-07-16 作者:Dennis Hunink

编辑:我终于得到了正确的答案;请在这篇帖子下面为所有感兴趣的人查看我自己的答案。

经过几天的搜寻和反复尝试,我真的被卡住了。我有一个客户,他通过使用评论表在自己的网站上收集客户体验;所有评论都显示为客户评论。到目前为止还不错。

但由于这家公司在旅游方面做得很多,他需要让他的客户上传多达五张图片,并附上评论。

所以我需要做的是找到一种方法,让客户上传媒体,并填写评论表。我知道这有点冒险,因为可能会上传损坏的图像等等。但我仍然希望实现这一目标。

尝试了很多东西,但我一次又一次陷入困境的地方是文件上传处理,对于一个未登录的用户来说,这是一个评论表单。。。

任何想法都将不胜感激!

1 个回复
最合适的回答,由SO网友:Dennis Hunink 整理而成

编辑:在朋友的帮助下,我想出了一个解决方案。对于所有感兴趣的人:使用自定义帖子类型,在我的例子中是comment\\u post。然后上传如下图像:

$new_post = array(
\'post_title\'    => $title,
\'post_content\'  => $comment,
    \'post_status\'   => \'pending\',// Choose: publish, preview, future, draft, etc.
    \'post_type\' => \'comments_post\'  // Use a custom post type
);
//save the new post and return its ID
$pid = wp_insert_post($new_post); 
//Upload the file(s)
require_once(ABSPATH . "wp-admin" . \'/includes/image.php\');
require_once(ABSPATH . "wp-admin" . \'/includes/file.php\');
require_once(ABSPATH . "wp-admin" . \'/includes/media.php\');

if ($_FILES) {
    foreach ($_FILES as $file => $array) {
    //Check if the $_FILES is set and if the size is > 0 (if =0 it\'s empty)
    if(isset($_FILES[$file]) && $_FILES[$file][\'size\']>0){
    if ($_FILES[$file][\'error\'] !== UPLOAD_ERR_OK) {
    echo \'<div class="allert alert-error"><p>Upload error : \' . $_FILES[$file][\'error\'] . \'</p></div>\';
    $upload = false;
}else{
$upload = true;
}
if($upload == true){
    $attach_id = media_handle_upload( $file, $pid );
}
}
 }   
                                }//End if \'$_FILES\'

                            }//End if errornumbers

结束

相关推荐

特定用户的wp_count_post、wp_count_Terms和wp_count_Comments?

有没有办法实现这些功能wp_count_posts, wp_count_terms 和wp_count_comments 仅为特定用户返回结果,可能使用用户的ID?我正在为自定义帖子类型制作一个自定义的“即时”仪表板小部件,我需要它只显示当前用户的数据,而不是整个站点的数据。提前谢谢。EDIT: 为了回应@kaiser在下面的评论,我做了以下操作,但什么都没有发生-结果与过滤器关闭时的结果相同(不应该是这样-检查此用户是否有不同数量的已发布employee 职位类型)。我的函数中的代码似乎根本没有被调用,