Esta rutina detecta los productos que tengan como peso 0, y les añade un valor por defecto. Crea un archivo php en el raíz de tu instalación WordPress, con la información a continuación, y personaliza el valor del peso $weight_final para los productos, en la linea 9.
<?php
ini_set( 'memory_limit', '1024M' );
ini_set( 'max_execution_time', 600 );
define( 'WP_USE_THEMES', false );
require_once 'wp-load.php';
echo 'iniciado proceso.' . date( 'H:i:s', time() ) . '<br />';
$weight_final = '1000';
$posts_product = get_posts( 'posts_per_page=-1&post_type=product&fields=ids' );
if ( ! empty( $posts_product ) ) {
foreach ( $posts_product as $productID ) {
$product = wc_get_product( $productID );
$weight = get_post_meta( $productID, '_weight', true );
echo '---<br />';
echo 'PostID: ' . $productID . '<br/>';
echo 'Weight: ' . $weight . ' final:' . $weight_final . ' </br>';
if ( 0 == $weight ) {
update_post_meta( $productID, '_weight', $weight_final );
}
}
}
echo 'process finished.' . date( 'H:i:s', time() ) . '<br />';
Recuerda siempre hacer una copia de seguridad de tu instalación WordPress, antes de hacer cualquier cambio.
No veo la rutina que hay que usar.
Acabo de actualizar la entrada. Ya la tienes! un saludo
Gracias, ya la pruebo.
Subo el archivo y lo ejecuto, verdad?
Si! Pero recuerda siempre hacer copia de seguridad de la base de datos.