อัปเดต WordPress, ปลั๊กอิน หรือธีมไม่ได้? วิธีแก้ข้อผิดพลาด “Update Failed”

เจอข้อความ "Update Failed" หรืออัปเดต WordPress ไม่ได้ใช่ไหม? บทความนี้รวมวิธีแก้ปัญหาทุกสาเหตุ ทั้ง File Permissions และอื่นๆ

เชื่อว่าคนทำเว็บ WordPress ทุกคนคงคุ้นเคยกับไอคอนแจ้งเตือนสีแดงพร้อมตัวเลข ที่คอยบอกเราว่ามีปลั๊กอิน, ธีม, หรือแม้แต่ตัว WordPress เองที่ต้องอัปเดต เราต่างรู้ดีว่าการอัปเดตคือหัวใจสำคัญของการรักษาเว็บไซต์ให้ปลอดภัยและมีประสิทธิภาพ คุณจึงกดปุ่ม “Update Now” ด้วยความมั่นใจ… แต่แล้ว วงล้อหมุนไปสักพัก หน้าจอกลับแสดงข้อความที่ไม่มีใครอยากเห็น: “Update Failed” (การอัปเดตล้มเหลว)

วินาทีนั้น ความรู้สึกหลากหลายอาจประดังเข้ามา ทั้งความหงุดหงิด, ความกังวลว่าเว็บไซต์จะเสียหาย, และคำถามตัวโตๆ ว่า “แล้วจะทำยังไงต่อ?”

ในฐานะผู้เชี่ยวชาญด้าน WordPress ผมขอบอกเลยว่าคุณไม่ได้เจอปัญหานี้คนเดียวครับ ข้อผิดพลาด “Update Failed” เป็นหนึ่งในปัญหาคลาสสิกที่พบได้บ่อย และสาเหตุของมันก็ไม่ได้ซับซ้อนเกินกว่าจะแก้ไข บทความนี้จะเปรียบเสมือนคู่มือฉบับสมบูรณ์ ที่จะพาคุณเจาะลึกถึงต้นตอของปัญหา และแนะนำวิธีแก้ไขทีละขั้นตอนอย่างละเอียด ตั้งแต่วิธีที่ง่ายที่สุดไปจนถึงเทคนิคขั้นสูง เพื่อให้คุณสามารถกลับมาอัปเดตเว็บไซต์สุดที่รักของคุณได้อย่างราบรื่นอีกครั้ง

แต่ก่อนที่เราจะเริ่มลงมือแก้ไข สิ่งที่ สำคัญที่สุด และผมต้องขอย้ำเป็นอันดับแรกคือ: โปรดสำรองข้อมูล (Backup) เว็บไซต์ของคุณทั้งหมดก่อนเสมอ! ไม่ว่าจะเป็นไฟล์หรือฐานข้อมูล การมี Backup คือกรมธรรม์ประกันภัยที่ดีที่สุด ที่จะช่วยให้คุณอุ่นใจได้ว่าแม้จะมีข้อผิดพลาดใดๆ เกิดขึ้น คุณก็สามารถกู้คืนเว็บไซต์กลับมาได้เสมอ

ทำไมการอัปเดตถึงล้มเหลว? 5 สาเหตุหลักที่คุณต้องรู้

การจะแก้ปัญหาให้ตรงจุด เราต้องเข้าใจสาเหตุก่อน โดยทั่วไปแล้ว ข้อผิดพลาด “Update Failed” มักเกิดจากปัจจัยหลักๆ 5 ประการนี้ครับ

  1. สิทธิ์ของไฟล์และโฟลเดอร์ไม่ถูกต้อง (Incorrect File Permissions): นี่คือผู้ต้องสงสัยอันดับหนึ่ง! กระบวนการอัปเดตคือการที่ WordPress ต้อง “เขียน” ไฟล์ใหม่ทับไฟล์เก่า หากเซิร์ฟเวอร์ไม่ได้ให้ “สิทธิ์” WordPress ในการเขียนหรือแก้ไขไฟล์ในโฟลเดอร์ที่เกี่ยวข้อง การอัปเดตก็จะล้มเหลวทันที
  2. ทรัพยากรเซิร์ฟเวอร์ไม่เพียงพอ (Insufficient Server Resources): ลองนึกภาพว่าการอัปเดตคือการส่งพัสดุขนาดใหญ่ ถ้าหากรถขนส่ง (เซิร์ฟเวอร์) มีน้ำมัน (PHP Memory Limit) ไม่พอ หรือได้รับอนุญาตให้วิ่งได้ในเวลาสั้นๆ (Max Execution Time) ก็ย่อมไปไม่ถึงปลายทาง การอัปเดตไฟล์ขนาดใหญ่ก็เช่นกัน หากทรัพยากรที่โฮสติ้งจัดสรรให้มีจำกัด ก็อาจทำให้กระบวนการหยุดชะงักกลางคันได้
  3. เว็บไซต์ติดอยู่ในโหมดซ่อมบำรุง (Stuck in Maintenance Mode): ทุกครั้งที่ WordPress เริ่มกระบวนการอัปเดต มันจะสร้างไฟล์ชั่วคราวชื่อ .maintenance ขึ้นมาเพื่อแสดงข้อความ “กำลังอยู่ในระหว่างการบำรุงรักษา” ให้ผู้เยี่ยมชมเห็น แต่หากการอัปเดตล้มเหลวกลางคัน บางครั้งไฟล์นี้อาจไม่ถูกลบออกไป ทำให้เว็บของคุณค้างอยู่ในโหมดซ่อมบำรุงและบล็อกการทำงานอื่นๆ รวมถึงการพยายามอัปเดตครั้งต่อไป
  4. ปัญหาการเชื่อมต่อ (Connectivity Issues): การอัปเดตจำเป็นต้องให้เว็บไซต์ของคุณเชื่อมต่อไปยังเซิร์ฟเวอร์ของ WordPress.org เพื่อดาวน์โหลดไฟล์เวอร์ชันใหม่ หากมีปัญหาการเชื่อมต่ออินเทอร์เน็ต, Firewall ของโฮสติ้งบล็อกการเชื่อมต่อ, หรือเซิร์ฟเวอร์ของ WordPress เองมีปัญหาชั่วคราว ก็อาจทำให้การดาวน์โหลดล้มเหลวได้
  5. เวอร์ชัน PHP ล้าสมัย (Outdated PHP Version): ปลั๊กอิน, ธีม, และ WordPress เวอร์ชันใหม่ๆ ถูกพัฒนาขึ้นมาเพื่อทำงานบน PHP เวอร์ชันล่าสุด หากเว็บไซต์ของคุณยังใช้ PHP เวอร์ชันเก่าเกินไป อาจเกิดความไม่เข้ากัน (Incompatibility) และทำให้การอัปเดตล้มเหลวได้

ลงมือแก้ไข! 5 วิธีพิชิตข้อผิดพลาด “Update Failed”

เมื่อเข้าใจสาเหตุแล้ว เรามาเริ่มลงมือแก้ไขกันเลยครับ ลองทำตามไปทีละขั้นตอนจากง่ายไปยาก

วิธีที่ 1: ลบไฟล์ .maintenance ที่ค้างอยู่

วิธีนี้เหมาะสำหรับกรณีที่เว็บของคุณค้างอยู่หน้า “Maintenance Mode” หรือการอัปเดตครั้งล่าสุดล้มเหลวไป

  1. ล็อกอินเข้าสู่ Control Panel ของโฮสติ้ง (เช่น cPanel) แล้วไปที่ File Manager (ตัวจัดการไฟล์) หรือใช้โปรแกรม FTP client (เช่น FileZilla)
  2. ไปยังโฟลเดอร์หลัก (Root Directory) ของเว็บไซต์คุณ ซึ่งเป็นที่อยู่ของไฟล์ wp-config.php
  3. มองหาไฟล์ชื่อ .maintenance (อาจต้องเปิดการแสดงผลไฟล์ที่ซ่อนอยู่ “Show Hidden Files” ก่อน)
  4. ลบไฟล์ .maintenance ทิ้ง
  5. กลับไปที่หน้าเว็บไซต์ของคุณแล้วลองรีเฟรชดู หากเว็บกลับมาเป็นปกติแล้ว ให้ลองทำการอัปเดตอีกครั้ง

วิธีที่ 2: แก้ไขสิทธิ์ของไฟล์และโฟลเดอร์ (File Permissions)

นี่คือวิธีแก้ที่ได้ผลบ่อยที่สุด! เราจะตั้งค่าสิทธิ์ให้ถูกต้องตามมาตรฐานของ WordPress

  • โฟลเดอร์ (Folders): ควรตั้งค่าสิทธิ์เป็น 755
  • ไฟล์ (Files): ควรตั้งค่าสิทธิ์เป็น 644

ขั้นตอนการแก้ไขผ่าน File Manager ของ cPanel:

  1. ใน File Manager, นำทางไปยังโฟลเดอร์หลักของ WordPress
  2. สำหรับโฟลเดอร์: คลิกขวาที่โฟลเดอร์สำคัญๆ เช่น wp-admin, wp-content, และ wp-includes แล้วเลือก Change Permissions
  3. ในช่องตัวเลข ให้กรอก 755 แล้วกด “Change Permissions”
  4. สำหรับไฟล์: เข้าไปในโฟลเดอร์ต่างๆ คลิกขวาที่ไฟล์แล้วเลือก Change Permissions
  5. ในช่องตัวเลข ให้กรอก 644 แล้วกด “Change Permissions”

หากคุณมีไฟล์และโฟลเดอร์จำนวนมาก การมานั่งแก้ทีละอันคงไม่ไหว โฮสติ้งส่วนใหญ่จะมีเครื่องมือที่ช่วยแก้ไขสิทธิ์ทั้งหมดได้ในครั้งเดียว หรือคุณสามารถใช้ FTP client อย่าง FileZilla ที่มีฟังก์ชัน “Apply recursively” เพื่อสั่งให้การเปลี่ยนแปลงสิทธิ์มีผลกับทุกไฟล์หรือทุกโฟลเดอร์ย่อยภายในได้

วิธีที่ 3: เพิ่มทรัพยากร PHP ให้กับเว็บไซต์

หากปัญหายังคงอยู่ อาจเป็นไปได้ว่าเซิร์ฟเวอร์ของคุณมีทรัพยากรไม่พอ เราสามารถลองเพิ่มได้ 2 ส่วนหลักๆ คือ

A. เพิ่ม PHP Memory Limit เป็นการเพิ่ม “หน่วยความจำ” ให้ WordPress สามารถทำงานที่ซับซ้อนได้

  1. เปิดไฟล์ wp-config.php ขึ้นมาเพื่อแก้ไข
  2. เลื่อนหาบรรทัด /* That's all, stop editing! Happy publishing. */
  3. ก่อนจะถึงบรรทัดนั้น ให้เพิ่มโค้ดนี้ลงไป: define(‘WP_MEMORY_LIMIT’, ‘256M’);
  4. บันทึกไฟล์ แล้วลองอัปเดตอีกครั้ง

B. เพิ่ม Max Execution Time เป็นการเพิ่ม “เวลา” ให้สคริปต์สามารถทำงานได้นานขึ้นก่อนที่จะถูกตัดจบ

  1. เปิดไฟล์ .htaccess ในโฟลเดอร์หลักขึ้นมาเพื่อแก้ไข
  2. เพิ่มโค้ดนี้ลงไปที่บรรทัดบนสุด: php_value max_execution_time 300 (ตัวเลข 300 หมายถึง 300 วินาที หรือ 5 นาที)
  3. บันทึกไฟล์ แล้วลองอัปเดตดู

หมายเหตุ: ผู้ให้บริการโฮสติ้งบางราย (โดยเฉพาะ Shared Hosting ราคาประหยัด) อาจจำกัดไม่ให้ผู้ใช้แก้ไขค่าเหล่านี้ได้ หากทำตามนี้แล้วยังไม่ได้ผล คุณอาจต้องติดต่อฝ่ายสนับสนุนของโฮสติ้งโดยตรง

วิธีที่ 4: อัปเกรดเวอร์ชัน PHP

ตรวจสอบให้แน่ใจว่าเว็บไซต์ของคุณใช้ PHP เวอร์ชันที่ทันสมัย (แนะนำที่เวอร์ชัน 7.4 ขึ้นไป)

  1. ล็อกอินเข้าสู่ cPanel ของคุณ
  2. มองหาเมนูที่ชื่อว่า “Select PHP Version” หรือ “MultiPHP Manager”
  3. ในหน้านั้น คุณจะสามารถดูเวอร์ชันปัจจุบันและเลือกเปลี่ยนเป็นเวอร์ชันที่สูงขึ้นได้
  4. หลังจากเปลี่ยนเวอร์ชันแล้ว ลองกลับไปอัปเดตอีกครั้ง

วิธีที่ 5: การอัปเดตด้วยตนเอง (Manual Update)

หากทุกวิธีข้างต้นยังไม่ได้ผล การอัปเดตด้วยตนเองผ่าน FTP คือทางออกสุดท้ายที่ได้ผลแน่นอน แม้จะมีขั้นตอนมากกว่าเล็กน้อย แต่ก็ไม่ซับซ้อนเกินไปครับ

ขั้นตอนการอัปเดตปลั๊กอิน/ธีมด้วยตนเอง:

  1. ดาวน์โหลดไฟล์: ไปที่ WordPress.org หรือเว็บไซต์ผู้พัฒนา แล้วดาวน์โหลดไฟล์ .zip ของปลั๊กอินหรือธีมเวอร์ชันล่าสุดมาเก็บไว้ในคอมพิวเตอร์ของคุณ
  2. เข้าถึงไฟล์เว็บ: ใช้ File Manager หรือ FTP client
  3. ไปยังโฟลเดอร์เป้าหมาย: ไปที่ wp-content/plugins/ (สำหรับปลั๊กอิน) หรือ wp-content/themes/ (สำหรับธีม)
  4. เปลี่ยนชื่อโฟลเดอร์เก่า: ค้นหาโฟลเดอร์ของปลั๊กอิน/ธีมที่คุณต้องการอัปเดต แล้วเปลี่ยนชื่อมัน เช่น จาก my-plugin เป็น my-plugin-old (นี่คือการ Backup และปิดการใช้งานไปในตัว)
  5. อัปโหลดไฟล์ใหม่: อัปโหลดไฟล์ .zip ที่คุณดาวน์โหลดมาไปยังโฟลเดอร์ plugins หรือ themes
  6. แตกไฟล์ (Extract): คลิกขวาที่ไฟล์ .zip ที่เพิ่งอัปโหลด แล้วเลือก “Extract” หรือ “Unzip” คุณจะได้โฟลเดอร์ใหม่ที่เป็นเวอร์ชันล่าสุด
  7. ตรวจสอบและลบ: กลับไปที่หลังบ้าน WordPress ของคุณเพื่อดูว่าปลั๊กอิน/ธีมเวอร์ชันใหม่ทำงานได้ปกติหรือไม่ หากทุกอย่างเรียบร้อยดี ให้กลับไปที่ File Manager แล้วลบโฟลเดอร์ -old และไฟล์ .zip ทิ้งเพื่อประหยัดพื้นที่

สรุปส่งท้าย: กุญแจสำคัญคือการป้องกันและเข้าใจปัญหา

ข้อผิดพลาด “Update Failed” แม้จะน่ารำคาญ แต่ก็เป็นสัญญาณเตือนที่ดีให้เราได้ตรวจสอบ “สุขภาพ” ของเว็บไซต์เรา สาระสำคัญที่อยากให้คุณนำไปปรับใช้คือ:

  • ปัญหามีสาเหตุที่ระบุได้: ส่วนใหญ่วนเวียนอยู่กับเรื่อง File Permissions, Server Resources, และไฟล์ที่ค้างในระบบ การไล่ตรวจสอบอย่างเป็นระบบจะช่วยให้คุณเจอต้นตอได้ไม่ยาก
  • File Manager/FTP คือเพื่อนแท้: การสามารถเข้าถึงไฟล์ของเว็บไซต์ได้โดยตรง คือเครื่องมือที่ทรงพลังที่สุดในการแก้ปัญหาเมื่อระบบหลังบ้านมีปัญหา
  • การสำรองข้อมูลคือที่สุดของความปลอดภัย: ย้ำอีกครั้งว่าไม่มีอะไรสำคัญไปกว่าการมี Backup ที่สมบูรณ์ก่อนลงมือทำอะไรก็ตามที่มีความเสี่ยง การอัปเดตก็เช่นกัน

การเรียนรู้วิธีแก้ไขปัญหาเหล่านี้จะทำให้คุณกลายเป็นผู้ดูแลเว็บไซต์ที่เก่งขึ้น สามารถรับมือกับปัญหาต่างๆ ได้อย่างมั่นใจ และดูแลให้เว็บไซต์ของคุณทำงานได้อย่างราบรื่นและปลอดภัยในระยะยาว

คำถามที่พบบ่อย (FAQ)

คำถามที่ 1: การอัปเดตมันเสี่ยงขนาดนี้ ทำไมเรายังต้องทำมันด้วย?

คำตอบ: เป็นคำถามที่ดีมากครับ แม้การอัปเดตจะมีความเสี่ยงอยู่บ้าง แต่ความเสี่ยงของการ “ไม่อัปเดต” นั้นสูงกว่ามหาศาลครับ การอัปเดตแต่ละครั้งไม่ได้มาพร้อมฟีเจอร์ใหม่ๆ เท่านั้น แต่ยังรวมถึง การอุดช่องโหว่ด้านความปลอดภัย (Security Patches) ที่สำคัญอย่างยิ่ง การปล่อยให้เว็บไซต์ใช้ซอฟต์แวร์เวอร์ชันเก่าก็เหมือนการเปิดประตูบ้านทิ้งไว้รอผู้บุกรุก ดังนั้น การแก้ปัญหาที่ต้นเหตุเพื่อให้สามารถอัปเดตได้จึงเป็นทางเลือกที่ดีและปลอดภัยกว่าการไม่อัปเดตเลยครับ

คำถามที่ 2: ใช้ Shared Hosting ราคาถูกอยู่ จะแก้ไขตามบทความนี้ได้ผลไหม?

คำตอบ: วิธีส่วนใหญ่ในบทความนี้ เช่น การลบไฟล์ .maintenance และการแก้ไข File Permissions สามารถทำได้บนโฮสติ้งเกือบทุกประเภท แต่ในส่วนของการเพิ่มทรัพยากร (PHP Memory/Execution Time) หรือการอัปเกรดเวอร์ชัน PHP นั้น โฮสติ้งราคาประหยัดบางแห่งอาจมีข้อจำกัดที่เข้มงวดและไม่อนุญาตให้ผู้ใช้ปรับแก้เองได้ หากคุณลองแก้ไขไฟล์ wp-config.php หรือ .htaccess แล้วไม่เกิดการเปลี่ยนแปลง วิธีที่ดีที่สุดคือการติดต่อฝ่ายสนับสนุนลูกค้า (Support) ของผู้ให้บริการโฮสติ้งของคุณโดยตรงครับ

คำถามที่ 3: เราสามารถปิดการอัปเดตอัตโนมัติเพื่อเลี่ยงปัญหานี้ได้หรือไม่?

คำตอบ: ในทางเทคนิคแล้ว “ทำได้” ครับ (ผ่านการเพิ่มโค้ดในไฟล์ wp-config.php หรือใช้ปลั๊กอิน) แต่โดยทั่วไปแล้ว “ไม่แนะนำ” อย่างยิ่ง โดยเฉพาะการปิดอัปเดตด้านความปลอดภัย (Minor security releases) เพราะนั่นคือเกราะป้องกันด่านสำคัญของเว็บไซต์ ทางที่ดีคือการแก้ปัญหาที่ทำให้การอัปเดตล้มเหลวให้หายขาด เพื่อให้ระบบสามารถทำงานได้ตามที่ควรจะเป็น ดีกว่าการหลีกเลี่ยงปัญหาด้วยการปิดฟังก์ชันที่สำคัญครับ


ปัญหายังแก้ไม่ได้? หรือไม่อยากเสี่ยงทำเอง?

การแก้ไขไฟล์ระบบมีความเสี่ยง ให้ทีมงานมืออาชีพจาก Pui Digital Marketing เข้าไปดูแลและแก้ไขปัญหา “Update Failed” ให้คุณดีกว่า เว็บไซต์ของคุณจะกลับมาอัปเดตได้ตามปกติ ปลอดภัย และทำงานเต็มประสิทธิภาพ

ทักมาปรึกษาปัญหาเบื้องต้นกับเราได้เลย!

รับแก้ปัญหาเว็บไซต์ WordPress | ติดต่อ Pui Digital Marketing

โทร: 0996203308
Line ID: @puidigitalmkt
คลิกลิงก์แอดไลน์: https://line.me/R/ti/p/@puidigitalmkt

Share your love