WooCommerce: crear productos programáticamente

No importa si este fragmento se adapta a sus necesidades o no, sigue siendo interesante ver cómo puede crear un nuevo producto de WooCommerce mediante programación/automáticamente cuando se activa un determinado par .

En este estudio de caso, veremos cómo generar un producto completamente nuevo, configurar su imagen destacada, precio, categoría, título y un archivo de descarga tan pronto como se cargue una imagen en la sección de Medios del backend de WordPress. Esto sería muy útil para los fotógrafos, por ejemplo: simplemente cargue una nueva imagen en la biblioteca de medios de WordPress y se creará automáticamente un nuevo producto.

Por supuesto, puede personalizar el código y usarlo con diferentes disparadores. Por ejemplo, es posible que deba crear un nuevo producto automáticamente cuando cada producto de teléfono siempre necesita un producto de carcasa a juego, solo que con un título diferente. O tal vez desee vincular la creación de productos una vez que se realiza un pedido.

De cualquier manera, ¡disfrútalo!

Este producto se creó automáticamente después de cargar Calm.jpg en la biblioteca multimedia de WordPress. A continuación encontrará más capturas de pantalla.

Fragmento de PHP: cree un producto automáticamente cuando se cargue una nueva imagen en la biblioteca de medios de WordPress

/**
 * @snippet       AutoCreate Product @ WP Admin
 * @how-to        Get CustomizeWoo.com FREE
 * @author        Rodolfo Melogli
 * @compatible    WooCommerce 5
 * @donate $9     https://businessbloomer.com/bloomer-armada/
 */
 
add_action( 'add_attachment', 'bbloomer_create_product_automatically', 9999 );
 
function bbloomer_create_product_automatically( $image_id ) {
    $product = new WC_Product_Simple();
    $product->set_name( 'Photo: ' . get_the_title( $image_id ) );
    $product->set_status( 'publish' );
    $product->set_catalog_visibility( 'visible' );
    $product->set_price( 19.99 );
    $product->set_regular_price( 19.99 );
    $product->set_sold_individually( true );
    $product->set_image_id( $image_id );
    $product->set_downloadable( true );
    $product->set_virtual( true );     
    $src_img = wp_get_attachment_image_src( $image_id, 'full' );
    $file_url = reset( $src_img );
    $file_md5 = md5( $file_url );
    $download = new WC_Product_Download();
    $download->set_name( get_the_title( $image_id ) );
    $download->set_id( $file_md5 );
    $download->set_file( $file_url );
    $downloads[$file_md5] = $download;
    $product->set_downloads( $downloads );
   $product->save();
}

capturas de pantalla

1. Carga de imágenes desde la biblioteca multimedia (Calm.jpg)

2. Creación automática de productos

Deja una respuesta

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

Subir