WPML
สถานะ
แก้ไขแล้ว
รายงานสำหรับ
WPML Multilingual & Multicurrency for WooCommerce 4.6.1
แก้ไขใน
4.6.2.1

ภาพรวมของปัญหา

คุณอาจพบปัญหาเกี่ยวกับ WPML Multilingual & หลายสกุลเงินสำหรับ WooCommerce 4.6.1 และอาจรวมถึงเวอร์ชันที่เผยแพร่ก่อนหน้านี้ด้วย

ข้อผิดพลาดนี้จะแสดงขึ้นพร้อมกับการหมดเวลาต่อไปนี้:

PHP Fatal error: Maximum execution time of 60 seconds exceeded in /wp-includes/class-wp-hook.php on line 288

วิธีแก้ปัญหาชั่วคราว

ปัญหานี้เกิดจากการมีคีย์ meta เป็น _thumbnail_id โดยมีค่าเท่ากับ 0 (ศูนย์)

คุณสามารถตรวจสอบได้ด้วยคิวรีนี้:

SELECT * FROM `wp_postmeta`
WHERE `meta_key` = '_thumbnail_id' AND `meta_value` = '0';

สำหรับวิธีแก้ปัญหาชั่วคราว คุณสามารถลบค่าเหล่านี้ออกจากฐานข้อมูล หรือใช้แพตช์ต่อไปนี้:

1. ไปที่โฟลเดอร์ ../wp-content/plugins/woocommerce-multilingual/inc/ และแก้ไขไฟล์ class-wcml-products.php

2. ค้นหาบรรทัดต่อไปนี้:

if( is_product() && !$this->woocommerce_wpml->products->is_original_product( $product_id ) ){

3. เปลี่ยนบรรทัดนั้นเป็น:

$is_original_product = $this->woocommerce_wpml->products->is_original_product( $product_id );
			if( is_product() && !$is_original_product ){

4. จากนั้น ค้นหาบรรทัดต่อไปนี้:

} elseif ( '_product_image_gallery' === $meta_key ) {

5. เปลี่ยนบรรทัดนั้นเป็น:

} elseif ( '_product_image_gallery' === $meta_key && !$is_original_product ) {

6. สุดท้าย ค้นหาบรรทัดต่อไปนี้:

} elseif ( '_thumbnail_id' === $meta_key ) {

7. เปลี่ยนบรรทัดนั้นเป็น:

} elseif ( '_thumbnail_id' === $meta_key && !$is_original_product ) {

8. บันทึกไฟล์และทดสอบ

ปัญหาที่ทราบแล้วทั้งหมด →