- Estado
- Resuelto
- Notificado para
- WPML Multilingual & Multicurrency for WooCommerce 4.6.1
- Resuelto en
- 4.6.2.1
Resumen del problema
Es posible encontrar un problema con WPML Multilingual & Multicurrency for WooCommerce 4.6.1 y posiblemente también en versiones anteriores.
El error se manifiesta con el siguiente tiempo de espera agotado:
PHP Fatal error: Maximum execution time of 60 seconds exceeded in /wp-includes/class-wp-hook.php on line 288
Solución alternativa
El problema se debe a que hay una clave meta _thumbnail_id con un valor igual a 0 (cero).
Puede comprobarlo con esta consulta:
SELECT * FROM `wp_postmeta` WHERE `meta_key` = '_thumbnail_id' AND `meta_value` = '0';
Como solución alternativa, puede eliminar estos valores de la base de datos O aplicar el siguiente parche:
1. Vaya a la carpeta ../wp-content/plugins/woocommerce-multilingual/inc/ y edite el archivo class-wcml-products.php.
2. Busque la siguiente línea:
if( is_product() && !$this->woocommerce_wpml->products->is_original_product( $product_id ) ){
3. Cambie esa línea por:
$is_original_product = $this->woocommerce_wpml->products->is_original_product( $product_id );
if( is_product() && !$is_original_product ){
4. Ahora, busque la siguiente línea:
} elseif ( '_product_image_gallery' === $meta_key ) {
5. Cambie esa línea por:
} elseif ( '_product_image_gallery' === $meta_key && !$is_original_product ) {
6. Finalmente, busque la siguiente línea:
} elseif ( '_thumbnail_id' === $meta_key ) {
7. Cambie esa línea por:
} elseif ( '_thumbnail_id' === $meta_key && !$is_original_product ) {
8. Guarde el archivo y pruebe.