hi i am using this too codes for upload multiple images
if ( $_FILES ) {
$files = $_FILES['agp_gallery'];
foreach ($files['name'] as $key => $value) {
if ($files['name'][$key]) {
$file = array(
'name' => $files['name'][$key],
'type' => $files['type'][$key],
'tmp_name' => $files['tmp_name'][$key],
'error' => $files['error'][$key],
'size' => $files['size'][$key]
);
}
$_FILES = array("agp_gallery" => $file);
foreach ($_FILES as $file => $array)
{
$newupload = agp_process_wooimage($file,$post_id);
}
}
}
and
function agp_process_wooimage($file, $post_id){
if ($_FILES[$file]['error'] !== UPLOAD_ERR_OK) __return_false();
require_once(ABSPATH . "wp-admin" . '/includes/image.php');
require_once(ABSPATH . "wp-admin" . '/includes/file.php');
require_once(ABSPATH . "wp-admin" . '/includes/media.php');
$attachment_id = media_handle_upload($file, $post_id);
$post_id = array ();
$array = array_push($post_id, '_product_image_gallery', $attachment_id);
update_post_meta($post_id, '_product_image_gallery', $array);
return $attachment_id;
}
but i have little problem images are uploading fine and attach too but in wp_postmeta there is no meta_key for _product_image_gallery for images attachment id... please check my attachment image.
i don't understand why the "_product_image_gallery" is not creating ...
if i change
update_post_meta($post_id, '_product_image_gallery', $array);
to
add_post_meta($post_id, '_product_image_gallery', $array);
its create "_product_image_gallery" meta_key but multiple times for its different meta_value
example :-
meta_key meta_value
_product_image_gallery 1
_product_image_gallery 2
_product_image_gallery 3
Instead
meta_key meta_value
_product_image_gallery 1,2,3
thanks in advance for your help
Hariprasad Vijayan answers:
Hello,
Please try this
<?php
if ( $_FILES )
{
$files = $_FILES['agp_gallery'];
foreach ($files['name'] as $key => $value)
{
if ($files['name'][$key])
{
$file = array(
'name' => $files['name'][$key],
'type' => $files['type'][$key],
'tmp_name' => $files['tmp_name'][$key],
'error' => $files['error'][$key],
'size' => $files['size'][$key]
);
}
$_FILES = array("agp_gallery" => $file);
$i=1;
foreach ($_FILES as $file => $array)
{
$newupload = agp_process_wooimage($file,$post_id,$i);
$i++;
}
}
}
function agp_process_wooimage($file, $post_id, $count)
{
if ($_FILES[$file]['error'] !== UPLOAD_ERR_OK) __return_false();
require_once(ABSPATH . "wp-admin" . '/includes/image.php');
require_once(ABSPATH . "wp-admin" . '/includes/file.php');
require_once(ABSPATH . "wp-admin" . '/includes/media.php');
$attachment_id = media_handle_upload($file, $post_id);
$post_id = array ();
$array = array_push($post_id, '_product_image_gallery', $attachment_id);
update_post_meta($post_id, '_product_image_gallery'.$count, $attachment_id);
return $attachment_id;
}
?>
Hariprasad Vijayan comments:
Please ask if you want any help regarding this..
somendra meena comments:
hi thanks for your reply please check attach file now post_id showing wrong and only one meta_value i uploaded to images and show only one meta value
somendra meena comments:
this is result