I want to change all product variactions images by custom URL. Is this possible?
function custom_change_variation_image_urls( $variation_data, $product, $variation ) {
$custom_image_urls = array(
'red' => 'https://example.com/red-image.jpg',
'blue' => 'https://example.com/blue-image.jpg',
);
$variation_attributes = $variation->get_variation_attributes();
if ( ! empty( $variation_attributes ) ) {
foreach ( $variation_attributes as $attribute_name => $attribute_value ) {
if ( isset( $custom_image_urls[ $attribute_value ] ) ) {
$variation_data['image']['thumb_src'] = $custom_image_urls[ $attribute_value ];
$variation_data['image']['src'] = $custom_image_urls[ $attribute_value ];
}
}
}
return $variation_data;
}
add_filter( 'woocommerce_available_variation', 'custom_change_variation_image_urls', 10, 3 );