2013-06-28 2 views
0

привет я создал функцию загрузки, но есть проблема add_post_meta создать несколько meta_key вместо одного ...add_post_meta создать несколько meta_key

пример: -

meta_key meta_value

_product_image_gallery 1 
_product_image_gallery 2 
_product_image_gallery 3 

его должно быть ...

meta_key meta_value

_product_image_gallery 1,2,3 


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', $attachment_id); 
} 

ответ

1

Для каждого цикла вы называете media_handle_upload() и передать новый файл $ к нему. Я думаю, что это создаст новый идентификатор вложения для каждого файла.

К тому же вы используете в update_post_meta(), и по умолчанию эти функции используют add_post_meta(), если что-то не существует. Который не будет, потому что вы еще не добавили это конкретное приложение к сообщению.

Я бы увидел, что этот скрипт работает по назначению, и ваш вопрос может что-то упустить. Вы запрашиваете, чтобы несколько изображений добавлялись к одному meta_value?