วิธีใช้โหมดดีบัก WordPress เพื่อแก้ไขข้อผิดพลาดของไซต์
เผยแพร่แล้ว: 2021-11-11แม้ว่า WordPress จะมีความเสถียรในฐานะแพลตฟอร์ม แต่คุณจะพบข้อผิดพลาดในบางจุด ยิ่งไปกว่านั้น อาจเป็นเพราะคุณไม่รู้ว่ามันไปถึงที่นั่นได้อย่างไร หรือคุณสามารถแก้ไขได้อย่างไร ในสถานการณ์เช่นนี้ โหมดดีบักของ WordPress เป็นตัวช่วยชีวิต
การดีบักเป็นวิธีค้นหาสาเหตุที่ 'บั๊ก' ก่อให้เกิดความหายนะ แม้ว่าคุณจะต้องหาวิธีแก้ไขด้วย ข้อความดีบักบางข้อความจะชี้ให้คุณทราบ แม้ว่าเมื่อโหมดดีบักให้ความช่วยเหลือแก่คุณแล้ว กระบวนการซ่อมแซมก็มักจะตรงไปตรงมา
ในบทความนี้ เราจะนำเสนอทุกสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับโหมดดีบักของ WordPress ก่อนอื่น ให้คุณเข้าใจมากขึ้นว่าโหมดนี้ทำอะไรได้บ้าง
โหมดดีบักของ WordPress คืออะไร
ในหลายกรณี คุณจะเห็นเวอร์ชันของการดีบักในการดำเนินการอยู่แล้ว เมื่อคุณพบข้อผิดพลาดบนเว็บไซต์ WordPress นี่เป็นส่วนเล็ก ๆ ของกระบวนการแก้ไขจุดบกพร่องที่กำลังดำเนินการอยู่ – จุดสิ้นสุด ภายใต้สถานการณ์ปกติ คุณจะเห็นการแจ้งเตือนข้อผิดพลาดร้ายแรงที่สำคัญในไซต์ของคุณ ลองนึกถึงปัญหาต่างๆ เช่น ข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูล หรือข้อผิดพลาด 500 Internal Server

แม้ว่าจะมีข้อผิดพลาดอีกมากมายที่ 'เงียบ' กล่าวอีกนัยหนึ่ง คุณจะไม่ทราบว่ามีข้อผิดพลาดเกิดขึ้นเว้นแต่คุณจะค้นหามัน โหมดดีบักของ WordPress เหมาะสำหรับสถานการณ์เหล่านี้
มันจะแสดงการแจ้งเตือนที่ส่วนหลังหรือส่วนหน้าของไซต์ของคุณ และไม่ใช่เฉพาะข้อผิดพลาด การเปิดใช้งานโหมดแก้ไขข้อบกพร่อง (หรือที่เรียกว่า WP_DEBUG
) จะแสดงคำเตือนและประกาศเกี่ยวกับรหัสพื้นฐานของคุณด้วย ตัวอย่างเช่น คุณมักจะเห็นข้อผิดพลาดในด้านต่างๆ ของไซต์ของคุณที่ไม่ปรากฏหรือไม่ปรากฏให้เห็น นี่คือการออกแบบ
ดังนั้น คุณสามารถใช้ WP_DEBUG
เพื่อตรวจจับปัญหาเกี่ยวกับโค้ด PHP ของไซต์ของคุณ ซึ่งเมื่อแก้ไขแล้ว จะทำให้คุณมีพื้นฐานที่ทนทานและมีประสิทธิภาพมากขึ้น
ทำไมคุณถึงต้องการใช้โหมดดีบั๊กของ WordPress
เป็นเรื่องที่ยุติธรรมที่จะบอกว่าการใช้ WP_DEBUG
ไม่ได้มีประโยชน์มากมายสำหรับผู้ใช้ไซต์ทั่วไป อาจ เป็นกรณีนี้ได้แม้ว่าจะไม่เป็นสากลก็ตาม ที่จริงแล้ว สำหรับไซต์ส่วนใหญ่ คุณไม่จำเป็นต้องใช้โหมดแก้ไขข้อบกพร่อง เนื่องจาก WordPress นั้นยอดเยี่ยมทั้งในการจัดการและแสดงข้อผิดพลาด
แม้ว่าเราสามารถนึกถึงบางสถานการณ์ที่โหมดดีบัก WordPress มีประโยชน์:
- แม้แต่สำหรับเจ้าของไซต์ทั่วไป การเปิดใช้งาน
WP_DEBUG
สามารถช่วยคุณวินิจฉัยปัญหาที่ซับซ้อนซึ่งไม่ได้เกิดขึ้นในสถานการณ์ปกติ ตัวอย่างหนึ่งคือ WordPress White Screen of Death (WSoD) หลายครั้ง คุณจะค้นพบข้อผิดพลาดหากคุณใช้โหมดดีบั๊กของ WordPress ซึ่งจะช่วยให้คุณเริ่มค้นหาวิธีแก้ไขได้ล่วงหน้า - หากคุณเป็นนักพัฒนา
WP_DEBUG
จะเป็นเครื่องมือที่ทรงคุณค่าในเวิร์กโฟลว์ของคุณ เนื่องจากคุณต้องการทราบเกี่ยวกับข้อผิดพลาดในการทำลายไซต์ และปัญหาที่น่ารำคาญที่อาจทำให้เกิดปัญหาตามมา โหมดดีบักของ WordPress จะแสดงสิ่งเหล่านี้ทั้งหมด และอื่นๆ ตัวอย่างเช่น คุณจะเห็นประกาศเกี่ยวกับฟังก์ชันและอาร์กิวเมนต์ที่คิดค่าเสื่อมราคาภายในโค้ดของคุณ สิ่งเหล่านี้จะไม่ทำให้ไซต์ของคุณเสียหาย แต่จะเป็นปัญหาเมื่อฟังก์ชันต่างๆ หายไปในภายหลัง
โดยทั่วไป WP_DEBUG ไม่ควรเปิดใช้งานบนไซต์จริง ด้วยเหตุนี้ จึงเป็นเครื่องมือในการพัฒนามากกว่าเมื่อใช้สภาพแวดล้อมแบบโลคัลหรือการแสดงละคร ถึงกระนั้น โหมดดีบักก็มีประโยชน์สำหรับไซต์สด แต่มีความถี่เล็กน้อยและมีระเบียบวินัย
หากคุณใช้โหมดแก้ไขข้อบกพร่องบนไซต์ที่ใช้งานจริง มีกฎสองสามข้อที่ต้องปฏิบัติตาม: อย่าใช้งานเป็นเวลานาน เปิดใช้งานในบางครั้งที่ไซต์ของคุณมีปริมาณการเข้าชมน้อยที่สุด และปิดใช้งาน WP_DEBUG
หลังจากคุณดำเนินการเสร็จสิ้น วิธีนี้จะช่วยลดความเสี่ยงที่เกี่ยวข้อง และทำให้การบำรุงรักษาไซต์ของคุณไม่อยู่ในสายตาของผู้ใช้ปลายทาง
วิธีเปิดใช้งานโหมดดีบัก WordPress สำหรับเว็บไซต์ของคุณใน 2 วิธี
หากคุณต้องการเปิดใช้งานโหมดดีบัก WordPress มีสองวิธีทั่วไป:
- เปิด ไฟล์ wp-config.php และเพิ่มโค้ดสองสามบรรทัด
- ติดตั้งและเปิดใช้งานปลั๊กอินเพื่อเปิดใช้งานโหมดแก้ไขข้อบกพร่อง
นอกจากนี้ยังมีโหมดที่เกี่ยวข้องและโหมดสหายบางอย่างเพื่อช่วยคุณแก้ไขข้อบกพร่องของไซต์ด้วย เราจะกล่าวถึงสิ่งเหล่านี้ในหัวข้อต่อไป แต่สำหรับตอนนี้ เรามาพูดถึงแนวทางแบบแมนนวลกันก่อน
1. เปิดใช้งาน Debug Mode ผ่าน ไฟล์ wp-config.php
หากคุณคุ้นเคยกับไฟล์หลักของ WordPress คุณจะรู้เกี่ยวกับ wp-config.php สำหรับผู้ที่ไม่ได้ฝึกหัด ไฟล์นี้จะจัดเก็บการตั้งค่าการกำหนดค่าไซต์และเซิร์ฟเวอร์ของคุณ เป็นไฟล์เดียวที่อาจทำให้เกิดข้อผิดพลาดในการสร้างการเชื่อมต่อฐานข้อมูล รวมถึงปัญหาอื่นๆ
ด้วยเหตุนี้ จึงเป็นไฟล์ที่คุณควรระมัดระวัง ด้วยเหตุนี้ คุณต้องการให้แน่ใจว่าคุณมีสิ่งต่อไปนี้ก่อนที่จะเริ่ม:
- ความรู้เกี่ยวกับ Secure File Transfer Protocol (SFTP) และทักษะในการใช้งาน
- ไคลเอ็นต์ SFTP ที่เหมาะสม เช่น FileZilla, Cyberduck หรือ Transmit
- ข้อมูลประจำตัว SFTP ของคุณ ซึ่งคุณจะพบได้ในแดชบอร์ดการโฮสต์ของคุณ หรือในอีเมลจากผู้ให้บริการของคุณ
- การสำรองข้อมูลไซต์ของคุณที่สะอาดและเป็นปัจจุบันในกรณีที่คุณต้องย้อนกลับการเปลี่ยนแปลง
- คุณอาจต้องใช้โปรแกรมแก้ไขข้อความเฉพาะ แต่ไม่จำเป็น
เมื่อคุณมีสิ่งเหล่านี้แล้ว ให้ลงชื่อเข้าใช้เว็บไซต์ของคุณผ่าน SFTP หากคุณเปิดเพียงไซต์เดียว ไดเร็กทอรีราก (เรียกอีกอย่างว่า www หรือ public_html ) จะเป็นที่ที่คุณควรไป

แม้ว่าหากคุณใช้งานหลายไซต์บนเซิร์ฟเวอร์ของคุณ ไซต์นั้นอาจอยู่ในไดเร็กทอรีที่มีชื่อไซต์ของคุณ เมื่อคุณมาถูกที่แล้ว ให้มองหา ไฟล์ wp-config.php โปรดทราบว่ายังมี ไฟล์ wp-config-sample.php ด้วย แต่นี่ไม่ใช่สิ่งที่คุณต้องการ

เมื่อคุณพบไฟล์ ให้คลิกขวาและเลือกตัวเลือกเพื่อแก้ไข ซึ่งจะแตกต่างกันไปตามโซลูชัน SFTP ของคุณ แต่มักจะพลาดได้ยาก:

เมื่อเปิดไฟล์แล้ว คุณต้องการเพิ่มบรรทัดเดียวเพื่อเปิดใช้งานโหมดแก้ไขข้อบกพร่อง:
define( 'WP_DEBUG', true);
พิมพ์สิ่งนี้เหนือบรรทัดที่เขียนว่า /* That's all, stop editing! Happy blogging. */
/* That's all, stop editing! Happy blogging. */
/* That's all, stop editing! Happy blogging. */
. เมื่อคุณบันทึกการเปลี่ยนแปลง โหมดดีบักของ WordPress จะทำงาน คุณยังเพิ่มบรรทัดลงในไฟล์ได้อีกด้วย ตัวอย่างเช่น คุณสามารถสร้างไฟล์ debug.log ที่เป็นลายลักษณ์อักษรโดยเฉพาะได้ดังนี้:
define( 'WP_DEBUG_LOG', true );
แม้ว่าอย่าลืมปิดการใช้งาน WP_DEBUG
โดยใช้ค่า false
แทน true
คุณสามารถลบบรรทัดที่เกี่ยวข้องออกจาก ไฟล์ wp-config.php และบันทึกการเปลี่ยนแปลงของคุณอีกครั้ง
2. ใช้ปลั๊กอินเฉพาะเพื่อเปิดใช้งานโหมดดีบักของ WordPress
คุณยังสามารถใช้ปลั๊กอินเพื่อเปิดใช้งานโหมดแก้ไขข้อบกพร่อง สิ่งนี้ทำให้กระบวนการเข้าถึงได้ง่ายขึ้นหากคุณไม่สะดวกที่จะใช้งานไฟล์หลักของคุณ ทางออกที่ดีที่สุดสำหรับสิ่งนี้คือการดีบัก WP:

เมื่อคุณติดตั้งและเปิดใช้งานปลั๊กอินแล้ว ปลั๊กอินนี้ใช้งานได้แล้ว มันเปิดใช้งาน 'ค่าคงที่' ต่อไปนี้ภายใน wp-config.php ของคุณ:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'SCRIPT_DEBUG', true ); define( 'SAVEQUERIES', true );
คุณใช้ค่าคงที่สองค่าแรกไปแล้ว SCRIPT_DEBUG
สลับ WordPress ไปใช้เวอร์ชันการพัฒนาของไฟล์ CSS และ JavaScript หลัก ภายใต้สถานการณ์ปกติ WordPress จะใช้ไฟล์ย่อขนาด ซึ่งอาจทำให้เกิดปัญหาได้ในบางกรณี สิ่งนี้จะไม่ส่งผลกระทบกับคุณหากคุณกำลังตามล่าบั๊ก แต่อาจทำได้หากคุณเป็นนักพัฒนา
SAVEQUERIES
เป็นค่าคงที่ที่เน้นนักพัฒนาซึ่งเก็บการสืบค้นฐานข้อมูลใน aa global array ( $wpdb->queries
) มันจะเก็บแบบสอบถามเอง ระยะเวลาที่ใช้ในการดำเนินการ และฟังก์ชันที่เรียกใช้ นอกจากนี้ยังมีผลกระทบด้านประสิทธิภาพ ดังนั้นคุณควรคำนึงถึงสิ่งนี้หากคุณใช้ปลั๊กอิน หากสิ่งที่กล่าวมาข้างต้นมีความหมายเพียงเล็กน้อยสำหรับคุณ โปรดทราบว่าประสบการณ์ของคุณจะไม่มีความสำคัญมากนัก
เมื่อคุณติดตั้งปลั๊กอิน คุณจะสังเกตเห็นว่าคุณอาจต้องติดตั้งปลั๊กอินเพิ่มเติมด้วย:

อันที่จริง สิ่งเหล่านี้ไม่จำเป็นเว้นแต่คุณจะเป็นนักพัฒนาที่มีงานเฉพาะที่ต้องทำ
ตัวเลือกปลั๊กอินมีน้อย ซึ่งช่วยในเรื่องการใช้งาน คุณสามารถค้นหาการตั้งค่าได้ในเมนู เครื่องมือ > การดีบัก WP ใน WordPress และมีสามตัวเลือก:
- เปิดใช้งาน
WP_DEBUG
- ตั้งค่า
WP_DEBUG_DISPLAY
เป็นเท็จ ซึ่งจะแสดงหรือซ่อนประกาศบนเว็บไซต์ของคุณ โดยไม่ขึ้นกับว่าบันทึกของคุณมีข้อผิดพลาดหรือไม่ - สลับ
WP_DISABLE_FATAL_ERROR_HANDLER
เป็นจริง หากคุณไม่ทราบว่าสิ่งนี้หมายความว่าอย่างไร คุณควรปล่อยไว้ตามลำพังเพราะอาจทำให้เกิด WSoD ได้บ่อยขึ้น
หากคุณต้องการดูบันทึก คุณสามารถทำได้ผ่านเมนู Debug Quick Look :

ปลั๊กอินเป็นวิธีที่สะดวกในการดีบักไซต์ของคุณโดยไม่ต้องเจาะลึกเข้าไปในไฟล์หลัก ดังนั้นการติดตั้งจึงคุ้มค่า แน่นอน คุณจะต้องถอนการติดตั้งปลั๊กอินหรือปิดใช้งานตัวเลือกต่างๆ หลังจากคุณดำเนินการเสร็จสิ้น เช่นเดียวกับวิธีการดำเนินการด้วยตนเอง
ห่อ
ไซต์ WordPress ล้มเหลวเป็นเหตุการณ์ที่เกิดขึ้นได้ยาก หรืออย่างน้อยที่สุดเมื่อเกิดขึ้น คุณสามารถแก้ไขได้ ข้อผิดพลาดหลักๆ ส่วนใหญ่แสดงผ่านการแจ้งเตือนบนไซต์ของคุณหรือผ่านหน้าเว็บเมื่อคุณโหลดไซต์ของคุณ แม้ว่าจะมีข้อผิดพลาดหรือข้อกังวล 'เงียบ' อื่นๆ มากมายที่คุณอาจต้องทราบ โดยเฉพาะอย่างยิ่งหากคุณเป็นนักพัฒนาซอฟต์แวร์
ในบทความนี้ เราได้ให้คุณสองวิธีในการเปิดใช้งานโหมดดีบัก WordPress พวกเขาอยู่ที่นี่อีกครั้ง:
- เปิด ไฟล์ wp-config.php โดยใช้ SFTP และเพิ่มโค้ดสองสามบรรทัด
- ติดตั้งปลั๊กอิน เช่น WP Debugging และบันทึกข้อผิดพลาดของคุณด้วยวิธีที่ไม่ยุ่งยาก
คุณจำเป็นต้องใช้โหมดแก้ไขข้อบกพร่องของ WordPress หรือไม่ และโพสต์นี้จะช่วยคุณได้หรือไม่ แจ้งให้เราทราบในส่วนความคิดเห็นด้านล่าง!