Lỗi “Invalid JSON” là một lỗi phổ biến mà người dùng WordPress có thể gặp phải khi cố gắng lưu hoặc cập nhật bài viết, trang hoặc nội dung khác. Khi lỗi này xuất hiện, bạn sẽ thấy một thông báo cho biết rằng “Invalid JSON response” đã xảy ra. Lỗi này thường xuất hiện khi có vấn đề liên quan đến cấu hình, mạng, hoặc các plugin gây xung đột trong WordPress.
Trong bài viết này, chúng ta sẽ đi sâu vào nguyên nhân gây ra lỗi “Invalid JSON” và cách khắc phục nó một cách dễ dàng.
Nguyên nhân gây ra lỗi “Invalid JSON”
Trước khi đi vào các bước khắc phục, bạn cần hiểu rõ nguyên nhân gây ra lỗi này. Một số lý do phổ biến bao gồm:
URL sai định dạng: WordPress sử dụng REST API để giao tiếp giữa trình duyệt và máy chủ. Nếu URL không chính xác hoặc bị thay đổi, API sẽ không hoạt động đúng cách, dẫn đến lỗi “Invalid JSON”.
Xung đột plugin hoặc theme: Một số plugin hoặc theme có thể gây xung đột với REST API của WordPress, khiến dữ liệu JSON không thể được xử lý đúng cách.
Thiếu cấu hình SSL: Nếu website của bạn sử dụng HTTPS nhưng không được cấu hình SSL chính xác, REST API có thể không hoạt động bình thường.
Cấu hình permalinks sai: Cấu hình permalinks không đúng cũng có thể gây ra lỗi này vì REST API dựa trên cấu trúc URL của website.
Máy chủ bị lỗi hoặc cấu hình không đúng: Một số cấu hình máy chủ như mod_security hoặc firewall có thể chặn các yêu cầu REST API, dẫn đến lỗi.
Cách sửa lỗi “Invalid JSON” trong WordPress
Dưới đây là một số phương pháp đơn giản mà bạn có thể áp dụng để sửa lỗi “Invalid JSON” trong WordPress.
1. Kiểm tra URL trong Settings
Đầu tiên, bạn cần kiểm tra xem URL của website có được cấu hình chính xác hay không:
- Vào Settings > General trong WordPress Dashboard.
- Đảm bảo rằng cả hai trường “WordPress Address (URL)” và “Site Address (URL)” đều có cùng URL và sử dụng HTTPS nếu website của bạn có SSL.
2. Cập nhật Permalinks
Cấu hình permalinks sai có thể gây ra lỗi. Để khắc phục:
Vào Settings > Permalinks.
Chọn một cấu trúc permalinks khác (ví dụ: Day and name) và nhấp Save Changes.
Sau đó, chọn lại cấu trúc ban đầu và lưu thay đổi một lần nữa.
3. Kiểm tra plugin hoặc theme gây xung đột
Để xác định liệu một plugin hoặc theme có gây ra lỗi “Invalid JSON” hay không, bạn có thể:
Tạm thời vô hiệu hóa tất cả plugin: Vào Plugins > Installed Plugins và chọn tất cả các plugin, sau đó chọn Deactivate từ menu thả xuống và nhấp Apply.
Kiểm tra lại xem lỗi có còn xuất hiện không. Nếu lỗi đã biến mất, kích hoạt từng plugin một để xác định plugin gây ra lỗi.
Nếu vấn đề không đến từ plugin, bạn có thể thử đổi sang một theme mặc định như Twenty Twenty-One để kiểm tra.
4. Cấu hình SSL đúng cách
Nếu website của bạn sử dụng HTTPS, hãy đảm bảo rằng SSL được cấu hình đúng cách. Bạn có thể sử dụng plugin như Really Simple SSL để kiểm tra và sửa các vấn đề về SSL.
5. Kiểm tra cấu hình máy chủ
Một số cấu hình máy chủ có thể gây xung đột với REST API. Nếu bạn có quyền truy cập vào máy chủ, hãy kiểm tra các thành phần sau:
Mod_security: Đảm bảo rằng mod_security không chặn các yêu cầu REST API. Bạn có thể tạm thời vô hiệu hóa mod_security để kiểm tra.
Firewall: Kiểm tra xem firewall có chặn bất kỳ yêu cầu nào đến REST API hay không.
6. Sử dụng phương pháp thủ công để cập nhật bài viết
Nếu bạn cần cập nhật nội dung mà lỗi “Invalid JSON” không cho phép, bạn có thể:
Chuyển sang trình soạn thảo cổ điển: Cài đặt plugin Classic Editor để tạm thời chuyển về trình soạn thảo cổ điển và tránh lỗi.
Sử dụng chế độ HTML: Trong trình soạn thảo Gutenberg, bạn có thể chuyển sang chế độ HTML và thực hiện các chỉnh sửa cần thiết.
Kết luận
Lỗi “Invalid JSON” trong WordPress có thể gây phiền toái, nhưng với các bước hướng dẫn ở trên, bạn có thể dễ dàng khắc phục mà không cần phải là chuyên gia kỹ thuật. Hãy kiểm tra URL, cấu hình permalinks, và plugin của bạn, và đảm bảo rằng SSL được cài đặt đúng cách. Nếu mọi thứ đều ổn mà vẫn gặp lỗi, có thể vấn đề nằm ở máy chủ và bạn cần liên hệ với nhà cung cấp dịch vụ hosting để được hỗ trợ.
Chúc bạn thành công trong việc khắc phục lỗi này và tiếp tục quản lý website WordPress một cách hiệu quả!
Kết nối với web designer Lê Thành Nam