WPML

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

การใช้ WordPress เวอร์ชันต่ำกว่า 5.9.0 ร่วมกับ WPML 4.6.9 อาจทำให้เกิดข้อผิดพลาดร้ายแรง:

Uncaught Error: Call to undefined function WPMLBlockEditor::wp_enqueue_block_style() in /wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Loader.php:97

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

ปัญหานี้ได้รับการแก้ไขแล้วใน WPML 4.6.10 การอัปเดตจะแก้ปัญหานี้บนไซต์ของคุณ ดังนั้นคุณจึงต้องใช้วิธีแก้ปัญหาชั่วคราวนี้เฉพาะเมื่อคุณยังไม่สามารถอัปเดตได้

คุณสามารถดาวน์เกรดเป็น WPML 4.6.8, ลองใช้เวอร์ชันเบต้าของ WPML V4.6.10 (เปิดในแท็บใหม่) หรือทำตามคำแนะนำด้านล่างเพื่อแพตช์โค้ดจนกว่าจะมีการออกตัวแก้ไขถาวร โปรดตรวจสอบให้แน่ใจว่าคุณได้สำรองข้อมูลไซต์ของคุณอย่างสมบูรณ์ก่อนที่จะแก้ไขโค้ดใด ๆ

ไปที่: wp-content/plugins/sitepress-multilingual-cms/classes/block-editor/Loader.php และค้นหาเมธอด \WPML\BlockEditor\Loader::maybeEnqueueNavigationBlockStyles จากนั้นแทนที่ด้วย:

public function maybeEnqueueNavigationBlockStyles() {
	global $wp_version;
	if ( version_compare($wp_version, '5.9.0' ) >= 0) {
		if ( ! wp_style_is( 'wp-block-navigation', 'enqueued' ) || ! wp_style_is( 'wp-block-navigation', 'queue' ) ) {
			wp_enqueue_block_style( LanguageSwitcher::BLOCK_LANGUAGE_SWITCHER, [
				'handle' => 'wp-block-navigation'
			] );
		}
	}
}

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

ยังคงพบปัญหานี้อยู่หรือไม่

หากการอัปเดตไม่สามารถแก้ไขปัญหานี้ได้ ส่งคำถามถึงฝ่ายสนับสนุน และเราจะตรวจสอบร่วมกับคุณ