Blog

Cập nhật WordPress thủ công an toàn

Tháng 5 25, 2026 · wn_admin

Cập nhật Wordpress thủ công an toàn

Bạn vừa bỏ tiền mua một giao diện WordPress đẹp, web chạy mượt, đơn hàng về đều. Rồi một ngày bảng điều khiển hiện thông báo “Có bản cập nhật mới” — và bạn ngần ngại không dám bấm vì sợ web “trắng trang” hay mất sạch dữ liệu. Đừng lo. Bài viết này sẽ hướng dẫn bạn cập nhật WordPress core, theme và plugin một cách thủ công, an toàn, từng bước một — kể cả khi bạn không rành kỹ thuật. Quan trọng nhất: làm đúng quy trình thì gần như không bao giờ mất dữ liệu, và nếu có sự cố bạn vẫn có đường lùi.

1. Vì sao phải cập nhật, và vì sao đôi khi nên cập nhật thủ công

Mỗi phiên bản WordPress mới không chỉ thêm tính năng — phần lớn là vá lỗ hổng bảo mật. Theo thống kê của các công ty bảo mật web, đa số website WordPress bị hack đều chạy phiên bản core, theme hoặc plugin cũ. Khi bạn để website “đứng yên” không cập nhật, bạn đang để cửa mở cho mã độc, spam và các cuộc tấn công tự động quét lỗ hổng đã công bố.

Ba lý do chính khiến việc cập nhật là bắt buộc:

  • Bảo mật: vá các lỗ hổng đã bị công khai mà hacker có thể khai thác.
  • Tương thích: đảm bảo theme và plugin chạy được với phiên bản PHP mới và với nhau.
  • Hiệu năng và tính năng: bản mới thường nhanh hơn, ít lỗi hơn và có công cụ mới.

Vậy tại sao lại có khái niệm “cập nhật thủ công”? Trong nhiều trường hợp, nút “Cập nhật” tự động trên Dashboard có thể thất bại: do hosting giới hạn quyền ghi file, do kết nối bị ngắt giữa chừng, do thiếu bộ nhớ PHP, hoặc do website bị kẹt ở “chế độ bảo trì”. Khi đó, cập nhật thủ công bằng FTP là cách kiểm soát hoàn toàn, an toàn và chắc chắn nhất. Hiểu cả hai cách giúp bạn không bao giờ bị “kẹt”.

“Cập nhật thủ công” không có nghĩa là phức tạp hay nguy hiểm. Nó chỉ có nghĩa là bạn chủ động kiểm soát từng bước thay vì phó mặc cho hệ thống tự xử lý. Với hướng dẫn bên dưới, ai cũng làm được.

2. Nguyên tắc số 1: Sao lưu trước khi làm bất cứ điều gì

Đây là nguyên tắc bất di bất dịch. Trước mỗi lần cập nhật — dù chỉ là một plugin nhỏ — bạn phải có một bản sao lưu (backup) hoàn chỉnh và mới nhất. Một website WordPress gồm hai phần cần sao lưu:

Thành phần Nội dung Vị trí
Bộ file (Files) Mã nguồn, theme, plugin, hình ảnh tải lên Thư mục public_html (chứa wp-content, wp-config.php…)
Cơ sở dữ liệu (Database) Bài viết, sản phẩm, đơn hàng, cài đặt, người dùng MySQL — quản lý qua phpMyAdmin

Bạn có ba cách sao lưu, từ dễ đến chuyên sâu:

1

Dùng plugin sao lưu (dễ nhất)

Cài một plugin như UpdraftPlus, All-in-One WP Migration hoặc Duplicator. Chỉ cần bấm “Backup Now”, plugin sẽ đóng gói cả file lẫn database vào một bản và cho bạn tải về máy hoặc lưu lên Google Drive/Dropbox.

2

Dùng công cụ của hosting

Hầu hết cPanel đều có mục Backup hoặc JetBackup. Bạn có thể tạo “Full Backup” hoặc dùng tính năng tạo bản sao tức thì (snapshot). Đây là cách nhanh và đáng tin cậy nếu hosting hỗ trợ.

3

Sao lưu thủ công (chủ động nhất)

Tải toàn bộ thư mục web về máy bằng FTP (FileZilla), đồng thời vào phpMyAdmin, chọn database, bấm Export → định dạng SQL để lưu file database. Cách này không phụ thuộc plugin nào nên không bao giờ “hỏng theo web”.

Cảnh báo: Sao lưu rồi phải tải bản đó về một nơi an toàn (máy tính hoặc cloud), đừng để bản backup nằm chung trên hosting. Nếu hosting gặp sự cố hoặc bị hack, bản backup nằm cùng chỗ cũng mất theo. Hãy kiểm tra dung lượng file backup > 0 để chắc chắn nó không rỗng.

3. Cập nhật WordPress core qua Dashboard

Khi có bản WordPress core mới, WordPress hiển thị banner ở đầu trang quản trị hoặc dấu chấm đỏ tại mục Bảng tin → Cập nhật (Dashboard → Updates). Trong điều kiện bình thường, đây là cách nhanh và an toàn nhất:

1

Sao lưu xong xuôi

Nhắc lại lần nữa cho chắc: phải có backup mới nhất trước khi bấm bất cứ nút cập nhật nào.

2

Vào Bảng tin → Cập nhật

Đường dẫn: /wp-admin/update-core.php. Tại đây bạn thấy phiên bản core hiện tại, phiên bản mới và danh sách theme/plugin cần cập nhật.

3

Bấm “Cập nhật ngay” cho core trước

WordPress sẽ tự bật chế độ bảo trì, tải bản mới, giải nén và cài đặt. Quá trình mất khoảng 30 giây đến vài phút. Tuyệt đối không đóng trình duyệt hay tắt máy trong lúc này.

4

Kiểm tra trang chủ và trang quản trị

Sau khi báo thành công, mở trang chủ ở tab ẩn danh và đăng nhập lại quản trị để chắc chắn mọi thứ chạy bình thường rồi mới cập nhật tiếp theme/plugin.

Mẹo: Cập nhật vào giờ ít khách (ví dụ sáng sớm hoặc khuya), tránh giờ cao điểm bán hàng. Nếu là web bán hàng, hãy báo trước cho nhân viên để không ai đang xử lý đơn lúc bạn cập nhật.

4. Cập nhật core thủ công bằng FTP khi Dashboard lỗi

Nếu nút cập nhật báo lỗi, hoặc web kẹt ở “Đang bảo trì, vui lòng quay lại sau”, bạn cần cập nhật thủ công. Bạn sẽ cần một phần mềm FTP (FileZilla) và bộ cài WordPress mới tải từ wordpress.org/download.

1

Tải bản WordPress mới và giải nén

Tải file .zip từ trang chủ WordPress, giải nén ra sẽ có thư mục wordpress chứa wp-admin, wp-includes và các file ở gốc.

2

Bật chế độ bảo trì thủ công (tùy chọn)

Tạo file tên .maintenance ở thư mục gốc với nội dung <?php $upgrading = time(); ?> để khách thấy thông báo bảo trì trong lúc bạn làm.

3

Xóa và thay hai thư mục lõi

Trên hosting, xóa hoàn toàn hai thư mục wp-admin và wp-includes cũ, rồi upload hai thư mục cùng tên từ bản mới lên thay thế. Hai thư mục này hoàn toàn là mã lõi, không chứa dữ liệu của bạn.

4

Upload đè các file ở thư mục gốc

Upload các file lẻ ở gốc bản mới (như wp-login.php, các file wp-*.php) và chọn ghi đè (overwrite). TUYỆT ĐỐI không động vào thư mục wp-content và file wp-config.php — đây là nơi chứa theme, plugin, hình ảnh và cấu hình của bạn.

5

Chạy cập nhật database

Truy cập /wp-admin/upgrade.php trên trình duyệt. Nếu WordPress cần nâng cấp cấu trúc database, nó sẽ hiện nút “Cập nhật cơ sở dữ liệu WordPress”. Bấm vào, xong là hoàn tất.

6

Xóa file bảo trì

Nếu trước đó bạn tạo file .maintenance, hãy xóa nó đi để website trở lại bình thường.

Cảnh báo: Ranh giới sống còn là: wp-content/ và wp-config.php = dữ liệu và cấu hình của BẠN, không bao giờ được xóa hay ghi đè. wp-admin/ và wp-includes/ = mã lõi WordPress, được phép thay mới hoàn toàn. Nhớ rõ ranh giới này thì bạn sẽ không bao giờ mất dữ liệu.

5. Cập nhật theme và plugin an toàn

Sau khi core đã ổn, đến lượt theme và plugin. Đây thường là nguồn gây xung đột nhiều hơn cả core, vì vậy hãy làm có trật tự.

Cập nhật từng cái một, không cập nhật hàng loạt

Cám dỗ lớn nhất là tích chọn tất cả rồi bấm “Update” một lần. Đừng. Nếu có 10 plugin được cập nhật cùng lúc và web trắng trang, bạn không biết “thủ phạm” là plugin nào. Hãy cập nhật một plugin → kiểm tra web → plugin tiếp theo. Mất thêm vài phút nhưng đổi lại sự an tâm và khả năng khoanh vùng lỗi.

Cập nhật theme thủ công bằng FTP

Nếu bạn mua theme và nhận bản cập nhật dưới dạng file .zip (thay vì cập nhật tự động qua bản quyền), cách an toàn nhất là:

1

Tải về và giải nén bản theme mới

Bạn sẽ có một thư mục theme, ví dụ webngon.

2

Đổi tên thư mục theme cũ trên hosting

Vào wp-content/themes/, đổi tên thư mục theme cũ thành ví dụ webngon-old. Cách này giữ lại bản cũ để lùi nếu cần, thay vì xóa thẳng.

3

Upload thư mục theme mới

Upload thư mục webngon mới vào wp-content/themes/. Vì tên trùng với theme đang kích hoạt, website sẽ tự nhận bản mới.

4

Kiểm tra và dọn dẹp

Kiểm tra giao diện. Nếu ổn, sau vài ngày bạn có thể xóa thư mục webngon-old.

Các tùy chỉnh trong Tùy biến (Customizer) như màu sắc, logo, menu được lưu trong database chứ không phải trong file theme, nên việc thay thư mục theme thường không làm mất những cài đặt này. Tuy nhiên nếu bạn đã sửa trực tiếp file trong theme thì những sửa đổi đó sẽ bị ghi đè — và đó chính là lý do cần child theme.

6. Child theme: vì sao nó cứu bạn khi cập nhật

Đây là khái niệm mà mọi chủ shop dùng WordPress nên hiểu. Child theme (theme con) là một theme nhỏ “kế thừa” toàn bộ giao diện và chức năng của theme chính (theme cha), nhưng cho phép bạn đặt mọi tùy chỉnh CSS và code riêng vào đó.

Vấn đề là: nếu bạn sửa trực tiếp file style.css hay functions.php của theme cha, thì mỗi lần cập nhật theme, toàn bộ sửa đổi của bạn sẽ bị xóa sạch — vì cập nhật ghi đè file cũ bằng file mới. Child theme giải quyết triệt để vấn đề này: code của bạn nằm trong theme con, theme cha cứ việc cập nhật tự do mà tùy chỉnh của bạn vẫn còn nguyên.

Một child theme tối thiểu chỉ cần một thư mục với hai file. File style.css khai báo header:

/*
 Theme Name:   Webngon Child
 Template:     webngon
 Version:      1.0.0
*/

Và file functions.php để nạp style của theme cha:

<?php
add_action( 'wp_enqueue_scripts', function() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
} );

Dòng Template: webngon phải khớp chính xác với tên thư mục của theme cha. Sau khi tạo, vào Giao diện → Themes, kích hoạt “Webngon Child” và mọi thứ trông y như cũ — nhưng giờ bạn đã được bảo vệ trước các lần cập nhật.

Mẹo: Nhiều theme bán sẵn đã kèm child theme trong gói tải về. Nếu theme bạn mua có, hãy kích hoạt child theme ngay từ đầu và đặt mọi code tùy chỉnh vào đó. Đây là thói quen giúp bạn cập nhật vô tư về sau.

7. Dùng staging site để thử nghiệm không rủi ro

Staging site là một bản sao của website thật, chạy trên một địa chỉ riêng (thường dạng staging.tencuaban.com), nơi bạn thử cập nhật trước. Nếu staging chạy ổn sau cập nhật, bạn mới áp dụng lên web thật. Nếu staging hỏng, web thật vẫn an toàn — khách hàng không hề hay biết.

Đây là cách làm chuyên nghiệp và gần như loại bỏ rủi ro. Nhiều hosting tốt (đặc biệt các gói WordPress hosting) có nút “Create Staging” tạo bản nháp chỉ trong một cú nhấp. Nếu hosting không hỗ trợ, plugin như WP Staging cũng làm được điều tương tự.

Cách cập nhật Rủi ro với khách Phù hợp với
Cập nhật thẳng trên web thật Cao — lỗi là khách thấy ngay Web nhỏ, ít thay đổi, đã backup kỹ
Thử trên staging rồi mới áp dụng Rất thấp Web bán hàng, web có nhiều plugin

8. Các lỗi thường gặp và cách xử lý

Đây là phần quan trọng nhất để bạn không hoảng loạn khi gặp sự cố. Hầu hết lỗi sau cập nhật đều có nguyên nhân rõ ràng và cách khắc phục đơn giản.

Màn hình trắng (White Screen of Death)

Web hiện trang trắng tinh, không có nội dung lẫn báo lỗi. Đây thường do xung đột plugin/theme hoặc cạn bộ nhớ PHP. Cách xử lý:

  • Bật chế độ gỡ lỗi: mở wp-config.php, sửa define('WP_DEBUG', false); thành define('WP_DEBUG', true); để xem thông báo lỗi cụ thể.
  • Tăng bộ nhớ: thêm define('WP_MEMORY_LIMIT', '256M'); vào wp-config.php.
  • Tắt plugin qua FTP: đổi tên thư mục wp-content/plugins thành plugins-off để tắt toàn bộ. Nếu web sống lại, đổi tên lại rồi bật từng plugin để tìm thủ phạm.

Lỗi 500 Internal Server Error

Thường do file .htaccess hỏng hoặc xung đột code. Hãy đổi tên file .htaccess ở thư mục gốc thành .htaccess-old, sau đó vào Cài đặt → Đường dẫn tĩnh (Permalinks) và bấm “Lưu” để WordPress tạo file mới. Nếu vẫn lỗi, kiểm tra phiên bản PHP của hosting có quá cũ hoặc quá mới so với theme/plugin không.

Xung đột plugin (web chạy nhưng lỗi chức năng)

Ví dụ giỏ hàng không hoạt động, form liên hệ báo lỗi sau khi cập nhật. Cách kiểm tra kinh điển: tắt hết plugin, bật lại từng cái một và thử lại chức năng sau mỗi lần bật. Khi bật đến plugin nào mà lỗi xuất hiện, đó chính là plugin xung đột.

Nếu bạn không vào được trang quản trị (/wp-admin) sau cập nhật, mọi thao tác tắt/bật plugin và theme đều có thể làm qua FTP bằng cách đổi tên thư mục trong wp-content/plugins hoặc wp-content/themes. WordPress sẽ tự nhận khi thư mục bị thiếu và vô hiệu hóa thành phần đó.

Kẹt ở “Đang bảo trì theo lịch trình”

Nếu cập nhật bị ngắt giữa chừng, web có thể kẹt ở thông báo “Briefly unavailable for scheduled maintenance”. Khắc phục cực dễ: dùng FTP vào thư mục gốc và xóa file .maintenance. Web sẽ trở lại bình thường ngay.

9. Checklist kiểm tra sau khi cập nhật

Đừng coi là xong khi nút cập nhật báo thành công. Hãy chạy qua danh sách này mỗi lần:

  • Mở trang chủ ở tab ẩn danh, kiểm tra hiển thị và tốc độ tải.
  • Kiểm tra trang sản phẩm, thêm vào giỏ hàng và thử quy trình thanh toán.
  • Gửi thử một form liên hệ và kiểm tra email có về không.
  • Kiểm tra menu, slider, ảnh banner và các phần tử động.
  • Xem trên điện thoại để chắc giao diện mobile không vỡ.
  • Kiểm tra trang quản trị không hiện lỗi đỏ, và tắt lại WP_DEBUG về false.

10. Cách khôi phục (rollback) khi mọi thứ hỏng

Nếu cập nhật gây lỗi không khắc phục được, đây là lúc bản backup phát huy giá trị. Có vài mức độ rollback:

1

Lùi một plugin/theme cụ thể

Nếu chỉ một thành phần gây lỗi, dùng plugin WP Rollback để hạ về phiên bản trước, hoặc tải bản cũ và upload đè qua FTP. Nếu trước đó bạn đã đổi tên theme thành webngon-old, chỉ cần đổi tên lại là xong.

2

Khôi phục toàn bộ từ backup

Nếu lỗi nặng, dùng plugin backup (UpdraftPlus…) bấm “Restore”, hoặc khôi phục thủ công: upload lại bộ file qua FTP và import lại file .sql database qua phpMyAdmin (nhớ xóa bảng cũ trước khi import).

3

Nhờ hosting khôi phục

Nhiều hosting giữ backup tự động hằng ngày. Liên hệ bộ phận kỹ thuật và yêu cầu khôi phục về thời điểm trước khi bạn cập nhật. Đây là phương án cuối khi bạn không có bản backup riêng.

11. Lịch bảo trì định kỳ nên duy trì

Cập nhật không phải việc làm một lần rồi quên. Hãy biến nó thành thói quen định kỳ để website luôn an toàn và khỏe mạnh:

Tần suất Việc cần làm
Hằng tuần Kiểm tra có bản cập nhật bảo mật khẩn cấp không; chạy backup nếu web có nhiều đơn hàng mới.
2 tuần / lần Cập nhật plugin và theme (sau khi đã backup), kiểm tra checklist sau cập nhật.
Hằng tháng Cập nhật core nếu có, dọn plugin không dùng, kiểm tra phiên bản PHP, xem báo cáo bảo mật.
Hằng quý Rà soát toàn bộ backup còn dùng được không, kiểm tra tốc độ web, dọn database.

Mẹo: Bật backup tự động theo lịch (UpdraftPlus cho phép đặt sao lưu hằng ngày/hằng tuần và đẩy lên Google Drive miễn phí). Tự động hóa việc backup nghĩa là bạn luôn có đường lùi mà không cần nhớ làm thủ công.

12. Câu hỏi thường gặp

Cập nhật WordPress có làm mất bài viết hay sản phẩm không?

Không, nếu làm đúng quy trình. Toàn bộ nội dung của bạn (bài viết, sản phẩm, đơn hàng) nằm trong database và thư mục wp-content, trong khi cập nhật core chỉ thay wp-admin và wp-includes. Chỉ cần không động vào wp-content và luôn backup trước, dữ liệu của bạn an toàn.

Có nên bật cập nhật tự động cho mọi thứ không?

Nên bật tự động cho các bản vá bảo mật nhỏ của core vì chúng hiếm khi gây lỗi. Nhưng với plugin và theme, đặc biệt trên web bán hàng, nên cập nhật thủ công để bạn chủ động backup và kiểm tra. Tự động hoàn toàn tiện nhưng có rủi ro web hỏng lúc bạn không hề biết.

Tôi không biết dùng FTP thì sao?

Bạn có thể dùng File Manager ngay trong cPanel của hosting — giao diện giống quản lý file trên máy tính, không cần cài phần mềm. Mọi thao tác đổi tên thư mục, upload, xóa file trong bài này đều làm được qua File Manager.

Bao lâu nên cập nhật một lần?

Với bản vá bảo mật, hãy cập nhật càng sớm càng tốt. Với các bản cập nhật tính năng thông thường, mỗi 1-2 tuần kiểm tra và cập nhật một lần là hợp lý. Đừng để website “lạc hậu” quá vài phiên bản, vì khoảng cách càng lớn thì rủi ro xung đột khi cập nhật càng cao.

Cập nhật xong web chậm hẳn, phải làm sao?

Hãy xóa cache (cả cache plugin lẫn cache trình duyệt), kiểm tra xem plugin nào vừa cập nhật có nặng thêm không, và đảm bảo hosting đang chạy phiên bản PHP được khuyến nghị (PHP 8.x). Nếu vẫn chậm, thử tắt lần lượt các plugin mới cập nhật để tìm nguyên nhân.

Cần một giao diện được cập nhật và hỗ trợ lâu dài?

Kho giao diện tại Webngon.net được tối ưu chuẩn WordPress, kèm child theme và hướng dẫn cập nhật rõ ràng, giúp bạn yên tâm vận hành website bán hàng mà không lo hỏng web mỗi lần nâng cấp.

Xem kho giao diện

Để lại bình luận

Email của bạn sẽ không hiển thị công khai. Các trường bắt buộc được đánh dấu *

Trợ lý AI sẵn sàng! 👋

Bạn cần tư vấn gì không?