Không giống như các lỗi khác, lỗi invalid JSON trong WordPress dễ hiểu và dễ sửa hơn. Lỗi này xuất hiện khi WordPress không thể kết nối với máy chủ web trong khi bạn đang làm việc với Block Editor. Các phản hồi của máy chủ được định dạng dưới dạng JSON, giải thích lý do xuất hiện lỗi này.
Việc khắc phục lỗi không mất nhiều thời gian, và có thể thực hiện bằng các cách sau:
- Kiểm tra xem có nguyên nhân đơn giản nào gây ra lỗi hay không.
- Kiểm tra và chỉnh sửa URL của WordPress nếu cần thiết.
- Điều chỉnh cài đặt permalink hoặc xây dựng lại chúng.
- Kiểm tra trang Site Health trong WordPress để xem có gợi ý nào về cách khắc phục không.
- Tái tạo file .htaccess.
Một trong những cách trên có thể là giải pháp cho bạn, và thứ tự dưới đây sẽ bắt đầu từ cách đơn giản nhất. Bạn sẽ dễ dàng có kỹ năng cần thiết để thực hiện từng cách chỉ trong thời gian ngắn.
Contents
1. Thực hiện các bước đơn giản để chẩn đoán lỗi
Trước khi điều chỉnh các cài đặt, hãy chắc chắn rằng lỗi Invalid JSON không phải do chính bạn gây ra. Tuy nhiên, trước khi thực hiện, bạn nên sao lưu đầy đủ trang web của mình để có thể khôi phục lại nếu cần.
Sau khi sao lưu, hãy kiểm tra các mục sau:
- Chuyển sang theme mặc định, phòng trường hợp theme chính của bạn bị lỗi.
- Tạm thời tắt Tường lửa Ứng dụng Web (WAF) nếu bạn đang sử dụng. Bạn cũng có thể tắt tạm thời plugin bảo mật.
- Deactivate và re-activate các plugin để kiểm tra xem có plugin nào gây ra lỗi JSON không hợp lệ không. Đây là bước khắc phục phổ biến trong WordPress.
- Thử sử dụng Classic Editor xem bạn có thể đạt được mục tiêu mà không gặp lỗi không. Tuy nhiên, đây không phải là giải pháp lâu dài.
- Nếu chưa bật chế độ debug trong WordPress, bạn nên làm điều này để có thể tìm ra nguyên nhân gây lỗi.
2. Kiểm tra URL của WordPress để khắc phục lỗi Invalid JSON
Đối với cách này, bạn đăng nhập vào WordPress và truy cập vào Settings:
Tại thẻ General, kiểm tra các trường WordPress Address (URL) và Site Address (URL). Trong đa số trường hợp, cả hai trường này sẽ giống với tên miền của trang web:
Nếu WordPress của bạn nằm trong thư mục khác, sự khác biệt rõ ràng ở đây có thể giải thích được lỗi Invalid JSON.
Hãy kiểm tra xem các URL có sử dụng đúng giao thức HTTP hay không. Nếu bạn có chứng chỉ SSL, mỗi URL nên bắt đầu bằng //. Kiểm tra kỹ xem có lỗi chính tả nào không, và đảm bảo mỗi URL đều dùng đúng giao thức.
Sau khi chỉnh sửa, lưu lại thay đổi và kiểm tra xem lỗi còn xuất hiện không. Nếu vẫn còn, chuyển sang cách tiếp theo.
3. Điều chỉnh cài đặt Permalink của WordPress
Trong trang Settings, chọn thẻ Permalinks. Cấu trúc permalink có thể gặp vấn đề gây ra lỗi Invalid JSON trong WordPress.
Cách giải quyết khá đơn giản:
- Chọn kiểu permalink. Trừ khi bạn sử dụng cấu trúc permalink tùy chỉnh, hãy chọn tùy chọn hiện tại trên trang này.
- Lưu lại thay đổi. Điều này sẽ “reset” cài đặt permalink và có thể xóa lỗi JSON không hợp lệ trong WordPress.
Nếu bạn sử dụng cấu trúc permalink tùy chỉnh, hãy kiểm tra kỹ để đảm bảo không có lỗi chính tả hoặc lỗi cú pháp trong các thẻ bạn sử dụng.
4. Kiểm tra nhật ký Site Health để có manh mối
WordPress cung cấp trang Site Health để bạn kiểm tra các vấn đề nghiêm trọng và các cải tiến khuyến nghị cho trang web. Nếu gặp lỗi JSON không hợp lệ, bạn có thể thấy khuyến nghị cải thiện: “The REST API encountered an unexpected result”. Đây là manh mối để bạn xác định vị trí lỗi JSON.
Nếu bạn không có nhiều kinh nghiệm đọc lỗi này, có thể liên hệ với nhà cung cấp hosting của bạn để được hỗ trợ.
5. Tái tạo file .htaccess để khắc phục lỗi Invalid JSON
Cách cuối cùng để khắc phục lỗi JSON không hợp lệ trong WordPress là tái tạo file .htaccess. Đây là một file cấu hình dành cho các máy chủ Apache.
Cách tốt nhất là tạo lại file .htaccess, điều này khá đơn giản. Khi thay đổi cài đặt permalink, việc lưu lại sẽ tạo lại file .htaccess.
Trước tiên, bạn nên sao lưu file .htaccess cũ. Để làm điều này, hãy sử dụng công cụ Secure File Transfer Protocol (SFTP) để truy cập máy chủ và kéo file .htaccess về máy tính của bạn. Bạn sẽ cần:
- Quyền truy cập quản trị vào máy chủ và thông tin đăng nhập.
- Một công cụ SFTP như FileZilla, Cyberduck hoặc Transmit.
File .htaccess sẽ nằm trong thư mục chính của trang web, chỉ cần kéo nó ra máy tính của bạn.
Sau đó, sao chép và xóa nội dung, rồi thêm mã sau:
# BEGIN WordPress RewriteEngine On RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress
Đây là file .htaccess mặc định. Lưu lại với tên .htaccess và tải lên máy chủ.
Kết luận
Lỗi invalid JSON trong WordPress khá dễ hiểu và dễ sửa. Hầu hết các giải pháp đều liên quan đến các cài đặt cấu hình của máy chủ, vì vậy bạn sẽ điều chỉnh trong các cài đặt của WordPress để khắc phục.
Nếu vẫn gặp lỗi, hãy liên hệ nhà cung cấp hosting để được hỗ trợ thêm.