我在wordpress页面模板的前端有一个表单。我希望用户提交他们的图像,这些图像应该自动插入到wordpress媒体库中。我已经尝试了所有内容并且正在插入附件,但上传文件夹中没有相应的图像,因此图像会出现404错误。
这是我的表格
<input type="file" name="gallery[]" id="gallery" multiple="true" accepts="image/*" data-rule-required="true" data-msg-required="Please attach at least one photograph">
以下是上传和获取图片附件的PHP代码:
if(isset($_FILES['gallery']))
{
for($i=0; $i<count($_FILES['gallery']['name']); $i++) {
//Get the temp file path
$filename = $_FILES['gallery']['name'][$i];
echo $filename;
//Make sure we have a filepath
if ($filename != ""){
$filetype = wp_check_filetype( basename( $filename ), null );
$wp_upload_dir = wp_upload_dir();
//echo $filetype['type'];
$attachment = array(
'guid' => $wp_upload_dir['url'] . '/' . basename( $filename ),
'post_mime_type' => $filetype['type'],
'post_title' => preg_replace( '/\.[^.]+$/', '', basename( $filename ) ),
'post_content' => '',
'post_status' => 'inherit'
);
$attachment_id = wp_insert_attachment( $attachment, $filename, $post_id );
require_once( ABSPATH . 'wp-admin/includes/image.php' );
$attach_data = wp_generate_attachment_metadata( $attach_id, $filename );
wp_update_attachment_metadata( $attach_id, $attach_data );
array_push($images,$attachment_id);
}
}
}
我做错了什么。任何帮助将受到高度赞赏
艾哈迈尔
答案 0 :(得分:0)
您是否检查过/ wp-content / uploads目录是否具有上传文件的必要权限? 尝试将权限设置为755