Add/Set 以编程方式提供产品图像和图库图像
Add/Set product Images and gallery images programmatically
我正在从 jSON 文件获取数据并尝试为产品设置图像,我的目标是 -
需要开发一种方法从 JSON 个响应中获取 extract/download 个图像并将图像设置为相关产品
//$product_data 正在从 Json
获取响应
$product_data = $_REQUEST['data'];
$product = new WC_Product_Simple();
$product->set_name( $product_data['Title'] ); // it's working
$product->set_status( 'publish' );
$product->save();
如果有多张图片需要分配给产品,第一张图片需要分配为特色image/thumbnail,然后将其余图片分配为产品图库缩略图。
$product_images = [];
$count = 0;
foreach($product_data as $product_key => $product_value):
if (strpos($product_key, 'Image') !== false):
$product_img_upload = wc_rest_upload_image_from_url(esc_url_raw($product_value));
$product_img_id = wc_rest_set_uploaded_image_as_attachment($product_img_upload, $product_data);
// Add image ID to array.
$product_images[] = $product_img_id;
$count++;
endif;
endforeach;
if (!empty( $product_images ) ) {
$product->set_image_id( $product_images[0] );
array_shift($product_images);
$product->set_gallery_image_ids( $product_images);
}
我正在从 jSON 文件获取数据并尝试为产品设置图像,我的目标是 - 需要开发一种方法从 JSON 个响应中获取 extract/download 个图像并将图像设置为相关产品 //$product_data 正在从 Json
获取响应$product_data = $_REQUEST['data'];
$product = new WC_Product_Simple();
$product->set_name( $product_data['Title'] ); // it's working
$product->set_status( 'publish' );
$product->save();
如果有多张图片需要分配给产品,第一张图片需要分配为特色image/thumbnail,然后将其余图片分配为产品图库缩略图。
$product_images = [];
$count = 0;
foreach($product_data as $product_key => $product_value):
if (strpos($product_key, 'Image') !== false):
$product_img_upload = wc_rest_upload_image_from_url(esc_url_raw($product_value));
$product_img_id = wc_rest_set_uploaded_image_as_attachment($product_img_upload, $product_data);
// Add image ID to array.
$product_images[] = $product_img_id;
$count++;
endif;
endforeach;
if (!empty( $product_images ) ) {
$product->set_image_id( $product_images[0] );
array_shift($product_images);
$product->set_gallery_image_ids( $product_images);
}