我正在尝试从URL上传照片,然后将其设置为用户提交的产品的功能图像
现在我可以完成此功能的第一部分了问题是我无法获取媒体的新URL并将其设置为WooCommerce产品的功能图像
这是代码
add_action(\'transition_post_status\', \'new_product_add\', 10, 3);
function new_product_add($new_status, $old_status, $post) {
if(
$old_status != \'publish\'
&& $new_status == \'pending\'
&& !empty($post->ID)
&& in_array( $post->post_type,
array( \'product\')
)
) {
$external_url = $post->post_excerpt;
/********************************************/
function uploadImageToMediaLibrary($postID, $url, $alt = "blabla") {
$tmp = download_url( $url );
$desc = $alt;
$file_array = array();
preg_match(\'/[^\\?]+\\.(jpg|jpe|jpeg|gif|png)/i\', $url, $matches);
$file_array[\'name\'] = basename($matches[0]);
$file_array[\'tmp_name\'] = $tmp;
if ( is_wp_error( $tmp ) ) {
@unlink($file_array[\'tmp_name\']);
$file_array[\'tmp_name\'] = \'\';
}
$id = media_handle_sideload( $file_array, $postID, $desc);
if ( is_wp_error($id) ) {
@unlink($file_array[\'tmp_name\']);
return $id;
}
return $id;
}
uploadImageToMediaLibrary($post->ID, $external_url, "custom_alt");
//MEDIA UPLOADED SUCCESSFULLY
//I DONT KNOW HOW TO GET THE NEW MEDIA URL FROM MEDIA GALLERY
//AND SET IT FOR THE PRODUCT FEATURE IMAGE
/********************************************/
$term = get_term_by(\'name\', \'PARENT_CATEGORY\', \'product_cat\');
wp_set_object_terms($post->ID, $term->term_id, \'product_cat\', true);
}
}