Intento cambiar los archivos de stock mediante programación, pero falla con algunos archivos.
Mi pregunta es: por qué set_manage_stock en la acción no funciona, set_stock_status funciona:
add_action('woocommerce_process_product_meta', function($post_id) { $product = wc_get_product($post_id); if( $_POST['_myvariable']==='yes'){ $product->set_manage_stock(false); $product->set_stock_status('instock'); $product->set_stock_quantity(99); } else{ $product->set_manage_stock(true); $product->set_stock_status('instock'); $product->set_stock_quantity(10); } $product->save(); }Probado bien con WooCommerce 6.3 . Esto creará un producto automáticamente cuando agregue un nuevo producto desde el administrador.
/** * Save meta box data. * * @param int $post_id WP post id. * @param WP_Post $post Post object. */ function action_woocommerce_process_product_meta($post_id, $post) { // make action magic happen here... $product = new WC_Product_Simple(); $product->set_name('Sample product '); $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_manage_stock(true); $product->set_stock_status('instock'); $product->set_stock_quantity(10); $product->save(); } // add the action add_action('woocommerce_process_product_meta', 'action_woocommerce_process_product_meta', 10, 2);