es Spanish

Asignar imágenes a nuestros productos de WooCommerce

Share on facebook
Share on linkedin
Share on twitter
Share on email

Imágenes en nuestros productos de WooCommerce.

Vamos a ver cómo se asignan imágenes a los productos en WooCommerce y a la galería del mismo utilizando PHP.

Lo ideal siempre es crear una función para nuestro código. En el mismo comento las partes más importantes:

function gbiet_anyadir_imagen($producto_image_url, $producto_image_gallery_url, $product_id){

  //Le pasamos la id del producto y las url de la imagen para el producto y la galería
  $thumb_url = $producto_image_url;
  $thumb_url_gallery = $producto_image_gallery_url;

  // Descargamos el archivo temporal 
  $tmp = download_url( $thumb_url );
  $tmp_gallery = download_url( $thumb_url_gallery );

  //Creamos el array con los datos para la primera url, y de paso nos aseguramos que tenga un formato correcto
  preg_match('/[^\?]+\.(jpg|JPG|jpe|JPE|jpeg|JPEG|gif|GIF|png|PNG)/', $thumb_url, $matches);//preg_match its for get sure image its correct
  $file_array['name'] = basename($matches[0]);
  $file_array['tmp_name'] = $tmp;

  //Creamos el array con los datos para la segunda url
  preg_match('/[^\?]+\.(jpg|JPG|jpe|JPE|jpeg|JPEG|gif|GIF|png|PNG)/', $thumb_url_gallery, $matches2);//preg_match its for get sure image its correct
  $file_array_gallery['name'] = basename($matches2[0]);
  $file_array_gallery['tmp_name'] = $tmp_gallery;

  //Creamos el objeto product con la id donde se asignará la imagen
  $product = newWC_Product_Variation($product_id);

  //Introducimos la imagen en el media de wordpress y guardamos su id en la variable thumbid
  $thumbid = media_handle_sideload( $file_array, $product_id, $product_id."-".$producto_image_url );//producto_image_url es la descripcion así podemos usarlo mejor
  //Y con esa id se la asignamos en su producto como imagen de cabecera
  set_post_thumbnail($product_id, $thumbid);

  //Con la imagen para la galería hacemos lo mismo y la añadimos en media
  $thumbid_gallery = media_handle_sideload( $file_array_gallery, $product_id, $producto_image_gallery_url );
  //Y la asignamos a la galería de ese producto
  update_post_meta( $product_id, '_product_image_gallery', $thumbid_gallery);
}

Y eso es todo, espero que os haya sido de utilidad. Cualquier duda o comentario será bienvenida.

 

Si te ha servido, deja un comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Más entradas

Ejemplo Seo en Imagen
Apuntes

¿Cómo optimizar imágenes para web?

¿Tienes una página web? ¿Un blog? ¿Una tienda online? En ese caso debes de saber la importancia de optimizar las imágenes que vayas utilizar para

Permitir Iframes en PrestaShop
Prestashop

Añadir iframe a PrestaShop

Si has intentado añadir un iframe a PrestaShop 1.7, te habrás dado cuenta que no te deja. Si activas la tienda en modo debug, da

Categorías

¿Quieres impulsar tu negocio?

escríbenos y manténte en contacto

Desarrollo de tiendas online Garber Informática