- Status
- Gelöst
- Gemeldet für
- WPML Multilingual & Multicurrency for WooCommerce 4.6.1
- Gelöst in
- 4.6.2.1
Übersicht über das Problem
Es kann zu einem Problem mit WPML Multilingual & Multicurrency for WooCommerce 4.6.1 und möglicherweise auch mit früheren Versionen kommen.
Der Fehler äußert sich durch das folgende Timeout:
PHP Fatal error: Maximum execution time of 60 seconds exceeded in /wp-includes/class-wp-hook.php on line 288
Problemumgehung
Das Problem wird durch einen Meta-Key _thumbnail_id mit dem Wert 0 (Null) verursacht.
Sie können das mit dieser Abfrage überprüfen:
SELECT * FROM `wp_postmeta` WHERE `meta_key` = '_thumbnail_id' AND `meta_value` = '0';
Als Problemumgehung können Sie diese Werte aus der Datenbank entfernen ODER den folgenden Patch anwenden:
1. Gehen Sie zum Ordner ../wp-content/plugins/woocommerce-multilingual/inc/ und bearbeiten Sie die Datei class-wcml-products.php.
2. Suchen Sie die folgende Zeile:
if( is_product() && !$this->woocommerce_wpml->products->is_original_product( $product_id ) ){
3. Ändern Sie diese Zeile in:
$is_original_product = $this->woocommerce_wpml->products->is_original_product( $product_id );
if( is_product() && !$is_original_product ){
4. Suchen Sie nun die folgende Zeile:
} elseif ( '_product_image_gallery' === $meta_key ) {
5. Ändern Sie diese Zeile in:
} elseif ( '_product_image_gallery' === $meta_key && !$is_original_product ) {
6. Suchen Sie abschließend die folgende Zeile:
} elseif ( '_thumbnail_id' === $meta_key ) {
7. Ändern Sie diese Zeile in:
} elseif ( '_thumbnail_id' === $meta_key && !$is_original_product ) {
8. Speichern Sie die Datei und testen Sie.