วิธีแก้ไข “Parse Error: Syntax Error, Unexpected” ใน WordPress
เผยแพร่แล้ว: 2021-07-16หากคุณเคยอัปเดตปลั๊กอินหรือวางโค้ดลงในเว็บไซต์ WordPress ของคุณ คุณอาจพบปัญหาข้อผิดพลาดทางไวยากรณ์ของข้อผิดพลาดในการแยกวิเคราะห์ที่สิ้นสุดโดยไม่คาดคิดในข้อความ WordPress นี่เป็นข้อผิดพลาดทั่วไปเนื่องจากต้องใช้อักขระเพียงตัวเดียวในการทำให้เกิด ในบทความนี้ เราจะสำรวจสาเหตุของข้อผิดพลาดนี้ และดูวิธีแก้ไข
Parse Error คืออะไร: ข้อผิดพลาดทางไวยากรณ์, การสิ้นสุดที่ไม่คาดคิดใน WordPress หมายถึงอะไร
ข้อผิดพลาดทางไวยากรณ์ของข้อผิดพลาดในการแยกวิเคราะห์การสิ้นสุดที่ไม่คาดคิดใน WordPress อาจเป็นข้อผิดพลาดที่ง่ายที่สุดและยังทำให้เกิดปัญหาใหญ่
ข้อผิดพลาดมีสองส่วน:
ข้อผิดพลาดทางไวยากรณ์ – ข้อผิดพลาดนี้เกิดจากข้อผิดพลาดในโครงสร้าง PHP เมื่ออักขระขาดหายไปหรือถูกเพิ่มซึ่งไม่ควรอยู่ที่นั่น
ไม่คาดคิด – หมายความว่าโค้ดไม่มีอักขระและ PHP ไปถึงจุดสิ้นสุดของไฟล์โดยไม่พบสิ่งที่ต้องการ ข้อผิดพลาดจะรวมข้อมูลในตอนท้ายที่อธิบายสิ่งที่เห็นซึ่งไม่คาดคิด
หากคุณเห็น Parse Error: Syntax Error, Unexpected end ใน WordPress แสดงว่า WordPress ตรวจพบว่ามีบางอย่างในโค้ดขาดหายไปหรือถูกเพิ่มเข้าไป อาจเป็นอะไรก็ได้ง่ายๆ เช่น เครื่องหมายจุลภาค กึ่งโคลอน วงเล็บปิด หรือวงเล็บปีกกามากเกินไป
ไวยากรณ์ที่หายไปอาจอยู่ภายในโค้ดที่คุณเขียนหรือวางลงในเว็บไซต์ของคุณ หรือภายในธีมหรือปลั๊กอินที่คุณได้ติดตั้งหรืออัปเดต
โชคดีที่ค้นหาและแก้ไขได้ไม่ยาก อย่างไรก็ตาม คุณจะต้องเข้าใจว่าโค้ดทำงานอย่างไรและต้องแก้ไขอย่างไร
วิธีแก้ไขข้อผิดพลาดในการแยกวิเคราะห์: ข้อผิดพลาดทางไวยากรณ์ที่ไม่คาดคิดสิ้นสุดใน WordPress
ข้อผิดพลาดทางไวยากรณ์ของข้อผิดพลาดในการแยกวิเคราะห์ที่เกิดขึ้นจริงโดยไม่คาดคิดใน WordPress จะมีส่วนท้ายที่แตกต่างกันขึ้นอยู่กับสิ่งที่ทำให้เกิดข้อผิดพลาด
ตัวอย่าง ได้แก่
- 1) ข้อผิดพลาดทางไวยากรณ์ จุดสิ้นสุดของไฟล์โดยไม่คาดคิด
- 2) ข้อผิดพลาดทางไวยากรณ์ โทเค็นที่ไม่คาดคิด
- 3) ข้อผิดพลาดทางไวยากรณ์ ตัวแปรที่ไม่คาดคิด
- 4) ข้อผิดพลาดทางไวยากรณ์, ตัวระบุที่ไม่คาดคิด
ข้อความแสดงข้อผิดพลาดมักจะระบุโทเค็น ตัวแปร ตัวระบุ ฯลฯ ที่ไม่ชอบโดยเฉพาะ เราจะดูตัวอย่างของสิ่งนี้เมื่อเราไป
การทดสอบข้อผิดพลาดทางไวยากรณ์ Parse Error ข้อผิดพลาดที่ไม่คาดคิดใน WordPress
WordPress ได้ทำการปรับปรุงมากมายในการจัดการโค้ด ตอนนี้ แทนที่จะเรียกใช้โค้ดที่ไม่ถูกต้องและฆ่าเว็บไซต์ของคุณ หากมีโค้ดเวอร์ชันก่อนหน้าที่รันอยู่ จะพยายามใช้โค้ดนั้นแทนเมื่อแสดงไซต์ต่อผู้เข้าชม
วิธีนี้ช่วยป้องกันไม่ให้ไซต์ของคุณแสดงข้อผิดพลาดต่อผู้เข้าชมและป้องกันไม่ให้คุณถูกล็อก ไซต์ของคุณยังคงสามารถล่มและล็อกคุณไว้ได้ แต่ตอนนี้มันยากขึ้น
นอกจากนี้ โปรแกรมแก้ไขโค้ดยังแสดงมาร์กอัป ดังนั้นจึงง่ายต่อการระบุตัวแปรและองค์ประกอบโค้ดอื่นๆ ทำให้ง่ายต่อการทดสอบโค้ดภายในปลั๊กอินและตัวแก้ไขโค้ดธีมภายใน WordPress
น่าเสียดายที่ WordPress ไม่ได้ให้ข้อความที่ชัดเจนเสมอไป บางครั้งไม่มีข้อความ เนื้อหาหายไป หรือไม่แสดงเว็บไซต์ สิ่งเหล่านี้สามารถแก้ไขได้ แต่อาจต้องใช้เวลาในการแก้ไขปัญหามากกว่านี้เล็กน้อย
มาดูตัวอย่างกัน เราจะเริ่มต้นด้วยสิ่งที่ง่าย
การแก้ไขรหัสปลั๊กอิน
อันดับแรก เริ่มจากสิ่งที่คุณทำล่าสุด ในตัวอย่างนี้ ฉันได้แก้ไขโค้ดในไฟล์ปลั๊กอิน ไฟล์ได้เปลี่ยนกลับเป็นโค้ดที่ใช้ได้ล่าสุด การเปลี่ยนแปลงของฉันจึงไม่ทำงาน ดูที่ข้อผิดพลาด มันจะบอกคุณว่าอะไรเป็นสาเหตุของรหัสข้อผิดพลาดและบรรทัดของรหัสที่มีข้อผิดพลาด
ในตัวอย่างนี้ WordPress เห็นวงเล็บที่ไม่คาดคิดเมื่อคาดว่าจะเห็นเครื่องหมายอัฒภาค
อันนี้ง่าย ขั้นแรกให้ดูที่บรรทัดด้านบน เราเห็นคำว่า break สิ้นสุด กรณีที่ 4 เราโชคดีที่เรามีกรณีอื่นเปรียบเทียบ ด้านบนคือ กรณีที่ 3 ซึ่งลงท้ายด้วย break แต่อันนี้มีเครื่องหมายอัฒภาคปิด
ถัดไป แก้ไขรหัสที่ทำให้เกิดข้อผิดพลาด
นี่เป็นอีกตัวอย่างหนึ่งในไฟล์ปลั๊กอินเดียวกัน อันนี้กำลังแสดงข้อผิดพลาดในบรรทัดที่ 488 อย่างไรก็ตาม บรรทัดของรหัสนั้นถูกต้อง มันทำให้ฉันมีเงื่อนงำแม้ว่า มันระบุสิ่งนี้ว่าเป็นตัวแปรที่ไม่คาดคิด
หากเราดูโค้ดด้านบน 488 เราจะเห็นว่าไม่มีวงเล็บปิด ทำให้ WordPress เห็นบรรทัดถัดไปไม่ถูกต้อง
เพียงเพิ่มวงเล็บปิดและอัปเดตไฟล์ ตอนนี้รหัสทำงานอย่างถูกต้อง
ปัญหาเหล่านี้เป็นเรื่องง่าย แต่โดยส่วนใหญ่ที่คุณเห็นข้อผิดพลาดทางไวยากรณ์ของข้อผิดพลาดในการแยกวิเคราะห์ที่สิ้นสุดโดยไม่คาดคิดใน WordPress ก็เหมือนกับตัวอย่างเหล่านี้
แก้ไขข้อผิดพลาดในการแยกวิเคราะห์เมื่อคุณไม่พบข้อผิดพลาด
มีสองวิธีในการค้นหาข้อผิดพลาดในการแยกวิเคราะห์หากไม่แสดงให้คุณเห็นหรือคุณไม่แน่ใจว่าข้อผิดพลาดนั้นมาจากไหน ลองดูทั้งสองวิธี
โหมดดีบัก
ขั้นตอนแรกคือการเปิดใช้งานบันทึกข้อผิดพลาดของ WordPress ไปที่ไฟล์ wp-config ของคุณโดยใช้ FTP หรือ cPanel ค้นหาบรรทัดโค้ดที่มีลักษณะดังนี้:
define( 'WP_DEBUG', false );
หากคุณมีรหัสนี้ ให้เปลี่ยน false เป็น true
หากคุณไม่มีรหัสบรรทัดนี้ ให้มองหาบรรทัดที่ระบุว่า:
“หยุดแก้ไข! บล็อกที่มีความสุข” และวางรหัสนี้:
define( 'WP_DEBUG', true );
โหลดเว็บไซต์. ซึ่งจะแสดงข้อผิดพลาดและตอนนี้คุณมีที่สำหรับเริ่มแก้ไขปัญหาแล้ว
ปลั๊กอินดีบัก
Query Monitor เป็นหนึ่งในปลั๊กอินการดีบักที่ได้รับความนิยมมากที่สุด มันมีเครื่องมือที่คุณสามารถเข้าถึงได้จากส่วนหน้าและส่วนหลังจากแถบเมนูด้านบนและเป็นภาพซ้อนทับ
ซึ่งจะเปิดใช้งานเครื่องมือแก้ไขข้อบกพร่องต่างๆ รวมถึงบันทึกข้อผิดพลาดที่คุณสามารถค้นหาข้อมูลที่ต้องการได้

แก้ไขข้อผิดพลาด Parse หากคุณถูกล็อกจาก WordPress
หากคุณถูกล็อกออกจากแดชบอร์ดของผู้ดูแลระบบ คุณจะต้องทำการเปลี่ยนแปลงด้วยวิธีอื่น คุณจะต้องดาวน์โหลดไฟล์จากเซิร์ฟเวอร์ที่มีข้อผิดพลาดและเปิดไฟล์ในโปรแกรมแก้ไขโค้ดเพื่อทำการแก้ไข
ในกรณีของฉัน ฉันกำลังทำการเปลี่ยนแปลงในไฟล์ functions.php สำหรับธีม Twenty Twenty One ฉันทำผิดพลาดในไวยากรณ์ของฉันและไซต์ของฉันก็หยุดทำงาน ทั้งหมดที่แสดงคือข้อผิดพลาดที่ไม่ช่วย
ตัวเลือกที่ดีที่สุดคือใช้ FTP หรือ cPanel ของโฮสต์ ฉันจะใช้ cPanel สำหรับตัวอย่างนี้ แต่กระบวนการก็เหมือนกัน ขั้นแรก เปิดตัวจัดการไฟล์ใน cPanel
ถัดไป เปิดโฟลเดอร์สำหรับเว็บไซต์ที่คุณกำลังทำงานอยู่ หากเป็นเว็บไซต์หลัก คุณอาจเห็นไอคอนลูกโลก มิฉะนั้น ให้เปิดโฟลเดอร์ที่มีชื่อเว็บไซต์
ไปที่โฟลเดอร์ wp-content
ไปที่โฟลเดอร์ที่มีธีมหรือปลั๊กอินที่คุณต้องการแก้ไข ในกรณีนี้ ฉันกำลังแก้ไขธีม
เลือกโฟลเดอร์ของธีมหรือปลั๊กอิน ฉันกำลังเลือกโฟลเดอร์สำหรับธีม Twenty Twenty One
ถัดไป ไปที่ไฟล์ที่คุณกำลังแก้ไขเมื่อเกิดปัญหาขึ้น ฉันกำลังแก้ไขไฟล์ functions.php ดาวน์โหลดไฟล์เพื่อทำงานแบบออฟไลน์หรือแก้ไขไฟล์ ฉันแนะนำให้ดาวน์โหลดข้อมูลสำรองก่อนทำการเปลี่ยนแปลง
โปรแกรมแก้ไขโค้ดของคุณอาจให้ข้อมูลเกี่ยวกับข้อผิดพลาด ในกรณีของฉัน มันแสดงให้เห็นว่ามีวงเล็บอยู่ที่บรรทัดที่ 29 อันที่จริง ไม่มีวงเล็บในบรรทัดที่ 17 ซึ่งทำให้บรรณาธิการคิดว่าต้องมีวงเล็บ
การเพิ่มวงเล็บลบข้อผิดพลาด ตอนนี้ฉันสามารถอัปโหลดไฟล์ใหม่เพื่อแทนที่ไฟล์ปัจจุบันหรือบันทึกได้หากฉันใช้เครื่องมือแก้ไขออนไลน์
ขณะนี้เว็บไซต์ของฉันใช้งานได้ตามปกติ
การกู้คืนไฟล์ก่อนหน้า
หากคุณไม่แน่ใจว่ามีอะไรเปลี่ยนแปลงในโค้ดและต้องการกู้คืนไฟล์ก่อนหน้าที่ใช้งานได้ ให้ไปที่ไฟล์ใน FTP หรือ cPanel
บางครั้ง WordPress ไม่ได้บอกคุณว่าปัญหามาจากไหน ในกรณีนี้ คุณสามารถเปลี่ยนชื่อโฟลเดอร์ทีละรายการเพื่อดูว่าปัญหาหายไปหรือไม่ เริ่มต้นด้วยปลั๊กอินของคุณ
หากคุณรู้ว่าปัญหามาจากไหน คุณสามารถอัปโหลดไฟล์ทดแทนได้ สำหรับปลั๊กอินหรือธีมในที่เก็บ WordPress คุณสามารถลบโฟลเดอร์และติดตั้งใหม่ได้
หากต้องการ คุณสามารถดาวน์โหลดธีมหรือปลั๊กอินจากที่เก็บ WordPress (หรือที่ที่คุณได้รับ) คลายซิปไฟล์ และแทนที่เฉพาะไฟล์ที่คุณต้องการเท่านั้น มันทำงานเหมือนกับที่เราจะแทนที่ WordPress ในส่วนถัดไป
อัปโหลดสำเนาที่สะอาดของ WordPress
หากปัญหาคือแกนหลักของ WordPress คุณสามารถอัปโหลด WordPress เวอร์ชันใหม่ได้โดยไม่ต้องลบไฟล์ของคุณ ดาวน์โหลดสำเนา WordPress ใหม่และเปิดเครื่องรูด
ถัดไป ให้ลบโฟลเดอร์ wp-content และไฟล์ชื่อ wp-config-sample.php
ถัดไป อัปโหลดไฟล์ WordPress จากโฟลเดอร์ที่คลายซิปลงในโฟลเดอร์รากของ WordPress การดำเนินการนี้จะเขียนทับไฟล์ทั้งหมด ยกเว้นสองไฟล์ที่คุณลบ เว็บไซต์ของคุณควรใช้งานได้แล้ว
สิ้นสุดความคิดเกี่ยวกับข้อผิดพลาดทางไวยากรณ์ข้อผิดพลาดในการแยกวิเคราะห์ ข้อผิดพลาดที่ไม่คาดคิดสิ้นสุดใน WordPress
ข้อผิดพลาดทางไวยากรณ์ข้อผิดพลาดในการแยกวิเคราะห์การสิ้นสุดที่ไม่คาดคิดใน WordPress เป็นข้อผิดพลาดทั่วไปสำหรับทุกคนที่จัดการโค้ด การแก้ไขไม่ใช่เรื่องยาก แต่บางครั้งอาจต้องใช้เวลาในการติดตาม ขั้นตอนนั้นง่าย:
- หากคุณได้เพิ่มรหัสแล้ว ให้เริ่มที่นั่น
- หากคุณได้ติดตั้งปลั๊กอินหรือธีมไว้ ให้ปิดใช้งาน
- เมื่อคุณไม่พบปัญหา ให้เปลี่ยนไฟล์ที่น่าสงสัย
- เมื่อทุกอย่างล้มเหลว ให้กู้คืนข้อมูลสำรอง
การทำตามขั้นตอนการแก้ปัญหาไม่กี่ขั้นตอนจะช่วยให้ไซต์ของคุณทำงานได้อย่างราบรื่นโดยเร็วที่สุด
เราต้องการได้ยินจากคุณ คุณมีข้อผิดพลาดทางไวยากรณ์ข้อผิดพลาดในการแยกวิเคราะห์ที่ไม่คาดคิดใน WordPress หรือไม่? แจ้งให้เราทราบว่าคุณแก้ไขได้อย่างไรในความคิดเห็นด้านล่าง
ภาพเด่นผ่าน alexdndz / shutterstock.com