WPML
สถานะ
แก้ไขแล้ว

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

Iconv เป็นโมดูล PHP ที่จำเป็นสำหรับบางฟีเจอร์ของ WPML โดยค่าเริ่มต้น โมดูลนี้จะถูกเปิดใช้งานเมื่อมีการติดตั้ง PHP บนเซิร์ฟเวอร์ อย่างไรก็ตาม ผู้ให้บริการโฮสติ้งบางรายอาจปิดการใช้งาน

https://www.php.net/manual/en/book.iconv.php

ดังนั้น หากคุณเปิดใช้งาน WPML และไม่ได้เปิดใช้งานโมดูล Iconv คุณจะเห็นข้อความแสดงข้อผิดพลาดดังต่อไปนี้:

Fatal error: Uncaught Error: Call to undefined function SymfonyPolyfillMbstringiconv() in .../wp-content/plugins/sitepress-multilingual-cms/vendor/symfony/polyfill-mbstring/Mbstring.php:409

นอกจากนี้ คุณอาจพบข้อผิดพลาดลักษณะนี้ใน WPML 4.3.16

Fatal error: Uncaught Error: Class 'Normalizer' not found in .../wp-content/plugins/sitepress-multilingual-cms/vendor/symfony/polyfill-iconv/Iconv.php:689

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

นักพัฒนาของเรากำลังดำเนินการเพื่อแก้ไขปัญหานี้โดยอัตโนมัติใน WPML เวอร์ชันถัดไป แต่เราขอแนะนำให้คุณ:


  • โฮสติ้งที่มีการจัดการอย่างมืออาชีพ: ติดต่อผู้ให้บริการโฮสติ้งของคุณและขอให้ติดตั้งและเปิดใช้งานโมดูล PHP iconv และโมดูล PHP intl

  • โฮสติ้งที่จัดการด้วยตนเอง: การติดตั้งใหม่ การอัปเดต หรือการคอมไพล์ PHP ใหม่ดูเหมือนจะเป็นตัวเลือกที่ง่ายที่สุดหากไม่เคยติดตั้งโมดูล iconv มาก่อน
    โปรดตรวจสอบให้แน่ใจว่าคุณไม่ได้คอมไพล์ PHP โดยใช้ “–without-iconv”

  • ติดตั้งหรือเปิดใช้งานโมดูล PHP intl

เมื่อเปิดใช้งาน iconv แล้ว คุณจะพบตารางต่อไปนี้ใน phpinfo ของคุณ:

ตรวจสอบให้แน่ใจว่าได้เปิดใช้งานโมดูล PHP intl ด้วยเช่นกัน

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