- Stato
- Risolto
- Segnalato per
- WPML Multilingual & Multicurrency for WooCommerce 4.6.1
- Risolto in
- 4.6.2.1
Panoramica del problema
È possibile riscontrare un problema con WPML Multilingual & Multivaluta per WooCommerce 4.6.1 e forse anche con le versioni precedenti.
L’errore si manifesta con il seguente timeout:
PHP Fatal error: Maximum execution time of 60 seconds exceeded in /wp-includes/class-wp-hook.php on line 288
Soluzione alternativa
Il problema è causato dalla presenza di una meta key _thumbnail_id con valore uguale a 0 (zero).
Puoi verificarlo con questa query:
SELECT * FROM `wp_postmeta` WHERE `meta_key` = '_thumbnail_id' AND `meta_value` = '0';
Come soluzione alternativa, puoi rimuovere questi valori dal database OPPURE applicare la seguente patch:
1. Vai alla cartella ../wp-content/plugins/woocommerce-multilingual/inc/ e modifica il file class-wcml-products.php.
2. Trova la seguente riga:
if( is_product() && !$this->woocommerce_wpml->products->is_original_product( $product_id ) ){
3. Modifica questa riga in:
$is_original_product = $this->woocommerce_wpml->products->is_original_product( $product_id );
if( is_product() && !$is_original_product ){
4. Ora, trova la seguente riga:
} elseif ( '_product_image_gallery' === $meta_key ) {
5. Modifica questa riga in:
} elseif ( '_product_image_gallery' === $meta_key && !$is_original_product ) {
6. Infine, trova la seguente riga:
} elseif ( '_thumbnail_id' === $meta_key ) {
7. Modifica questa riga in:
} elseif ( '_thumbnail_id' === $meta_key && !$is_original_product ) {
8. Salva il file e testa.