![]() |
| Cách sửa lỗi Blogger không lưu được theme và cập nhật HTML |
Bạn vừa chỉnh sửa HTML trong Blogger, bấm Lưu nhưng hệ thống lại báo “Cập nhật không thành công”, “Không thể lưu chủ đề” hoặc thậm chí không thể khôi phục file XML?
Đây là một trong những lỗi thường gặp nhất khi chỉnh theme Blogger, đặc biệt khi chúng ta thêm code HTML, CSS, JavaScript hoặc sao chép các đoạn code từ website khác.
Điều khó chịu là Blogger đôi khi chỉ báo lỗi chung mà không chỉ rõ đoạn code nào đang có vấn đề.
Trong bài viết này, MODSHARER sẽ hướng dẫn bạn cách kiểm tra và sửa lỗi Blogger không lưu được theme theo từng bước, từ những lỗi đơn giản nhất đến các lỗi XML, widget và JavaScript khó phát hiện hơn.
Trước khi thực hiện bất kỳ thay đổi nào, bạn nên đọc: Cách sao lưu và khôi phục theme Blogger an toàn .
{tocify} $title={Mục lục}Dấu hiệu Blogger đang gặp lỗi theme
Lỗi theme có thể xuất hiện dưới nhiều hình thức khác nhau.
Một số trường hợp phổ biến:
- Bấm Lưu nhưng Blogger báo cập nhật không thành công.
- Không thể lưu sau khi thêm một đoạn HTML.
- Không thể khôi phục file XML đã chỉnh sửa.
- Theme lưu được nhưng website trắng trang.
- Theme lưu được nhưng mất một phần giao diện.
- Menu hoặc sidebar biến mất.
- Bài viết không còn hiển thị.
- Blogger báo lỗi tại một dòng XML cụ thể.
- Widget bị lỗi hoặc bị trùng ID.
Nếu theme đang hoạt động bình thường trước khi bạn chỉnh code, hãy ưu tiên kiểm tra đoạn code vừa thêm hoặc vừa sửa thay vì thay đổi toàn bộ theme.
Tại sao Blogger khó tính hơn HTML thông thường?
Theme Blogger không phải một file HTML thông thường.
Nó sử dụng cấu trúc XML kết hợp với các thẻ riêng của Blogger như:
<b:widget>
<b:if>
<b:loop>
<b:includable>
<data:post.title/>
XML yêu cầu cấu trúc chặt chẽ hơn HTML thông thường. Chỉ một ký tự sai cũng có thể khiến Blogger từ chối toàn bộ theme.
Bước 1: Sao lưu theme trước khi sửa
Nếu Blogger vẫn cho phép tải theme hiện tại xuống, hãy backup ngay trước khi tiếp tục kiểm tra.
Vào:
Đặt tên file rõ ràng, ví dụ:
Ngay cả một theme đang lỗi một phần cũng nên được lưu lại trước khi tiếp tục chỉnh sửa.
Bước 2: Hoàn tác đoạn code vừa thêm
Đây là cách kiểm tra nhanh nhất.
Nếu lỗi xuất hiện ngay sau khi bạn thêm:
- JavaScript.
- Mã quảng cáo.
- CSS.
- Widget.
- Menu.
- Code HTML.
hãy xóa hoặc hoàn tác đúng đoạn vừa thêm rồi thử lưu lại.
Nếu Blogger lưu được sau khi xóa đoạn đó, gần như chắc chắn lỗi nằm trong phần code mới.
Thay đổi ít nhất có thể → Lưu → Kiểm tra → Tiếp tục.
Bước 3: Kiểm tra dấu & trong XML
Một trong những lỗi XML phổ biến nhất là sử dụng ký tự & trực tiếp trong thuộc tính hoặc nội dung XML ở vị trí không phù hợp.
Ví dụ dễ gây lỗi:
Trong mã XML thực tế, ký tự ampersand trong giá trị cần được biểu diễn đúng dạng entity.
Dạng XML an toàn:
Khi sao chép script quảng cáo, tracking hoặc URL có nhiều tham số vào theme Blogger, đây là một vị trí rất đáng kiểm tra.
Bước 4: Kiểm tra thẻ chưa được đóng
XML yêu cầu các thẻ phải có cấu trúc mở và đóng hợp lệ.
Ví dụ sai:
<span>Nội dung</span>
Ở ví dụ trên, thẻ <div> chưa được đóng.
Đúng:
<span>Nội dung</span>
</div>
Bước 5: Kiểm tra các thẻ tự đóng
Một số thành phần trong XML Blogger thường được viết dạng tự đóng.
Ví dụ:
<link href='...' rel='stylesheet'/>
<b:include name='theme-head'/>
Nếu sửa nhầm dấu / hoặc cấu trúc của những thẻ này, theme có thể không
còn hợp lệ.
Bước 6: Kiểm tra dấu ngoặc kép và dấu nháy
Một lỗi nhỏ nhưng rất khó nhìn thấy là thiếu dấu nháy trong thuộc tính.
Ví dụ sai:
Đúng:
Một dấu nháy thiếu có thể khiến Blogger hiểu sai toàn bộ phần code phía sau.
Bước 7: Kiểm tra cấu trúc b:if
Blogger sử dụng <b:if> để hiển thị nội dung theo điều kiện.
Ví dụ:
Nội dung trang chủ
</b:if>
Nếu xóa nhầm:
hoặc thêm một thẻ đóng dư, cấu trúc XML có thể bị phá vỡ.
Bước 8: Kiểm tra b:section
b:section là khu vực chứa các widget Blogger.
Ví dụ:
... widget ...
</b:section>
Nếu bạn di chuyển hoặc xóa code trong khu vực này, cần đặc biệt chú ý thẻ mở và đóng.
Bước 9: Kiểm tra Widget ID
Mỗi widget Blogger cần một ID phù hợp và không nên bị trùng trong cùng theme.
Ví dụ:
Nếu trong theme đã có:
và bạn sao chép thêm một widget khác cũng dùng chính ID đó, Blogger có thể xử lý không đúng hoặc từ chối cấu trúc.
Ví dụ có thể đổi thành:
Bước 10: Kiểm tra JavaScript
JavaScript là một trong những nguyên nhân phổ biến khiến người mới gặp lỗi khi chèn code vào theme Blogger.
Ví dụ JavaScript có chứa:
>
&
có thể xung đột với cách XML phân tích nội dung.
Theme Blogger thường đặt JavaScript phức tạp trong CDATA:
//<![CDATA[
// JavaScript ở đây
//]]>
</script>
Không nên tự động bọc mọi script bằng CDATA nếu bạn chưa hiểu cấu trúc theme hiện tại. Hãy quan sát cách theme gốc đang tổ chức JavaScript rồi làm theo cùng kiểu.
Bước 11: Kiểm tra vị trí của CSS
CSS thường không làm Blogger từ chối XML chỉ vì một thuộc tính CSS viết sai, nhưng việc chèn CSS vào sai khu vực hoặc làm hỏng phần CDATA có thể gây lỗi.
Trong nhiều theme Blogger, CSS chính nằm trong:
/* CSS */
]]></b:skin>
Không nên vô tình xóa:
hoặc thẻ:
Bước 12: Kiểm tra code quảng cáo
Code Google AdSense hoặc các mạng quảng cáo thường chứa JavaScript, URL và nhiều thuộc tính.
Nếu chèn sai vị trí hoặc chỉnh sai cú pháp, theme có thể gặp lỗi.
Ngoài ra, không nên chèn cùng một thư viện quảng cáo nhiều lần nếu không cần thiết.
Trước khi thêm quảng cáo:
- Tạo backup.
- Kiểm tra theme đã có script AdSense hay chưa.
- Chỉ thêm đúng đoạn cần thiết.
- Lưu và kiểm tra sau từng thay đổi.
Bước 13: Kiểm tra script bên ngoài
Một theme tải JavaScript từ một website khác có thể sử dụng dạng:
Bạn nên kiểm tra:
- Script đến từ đâu?
- Có thực sự cần thiết không?
- Nguồn có đáng tin cậy không?
- Nếu xóa script thì theme có còn hoạt động không?
Không nên giữ những script không rõ mục đích chỉ vì chúng có sẵn trong theme tải từ Internet.
Cách tìm lỗi bằng số dòng Blogger báo
Trong một số trường hợp, Blogger sẽ hiển thị thông báo có số dòng và cột.
Ví dụ:
Nếu có thông tin này, hãy:
- Ghi lại số dòng.
- Mở theme bằng trình chỉnh sửa code.
- Đi tới khu vực gần dòng đó.
- Kiểm tra vài dòng phía trên và phía dưới.
Lỗi thực tế không phải lúc nào cũng nằm đúng tại dòng Blogger báo. Đôi khi nguyên nhân nằm ở một thẻ chưa đóng từ phía trên.
Dùng Visual Studio Code để kiểm tra theme
Với theme dài hàng nghìn dòng, việc kiểm tra trực tiếp trong Blogger có thể khá khó.
Bạn có thể mở file XML bằng Visual Studio Code để:
- Tìm kiếm nhanh.
- Xem số dòng.
- Thu gọn từng khối code.
- Tô màu cú pháp.
- So sánh hai phiên bản theme.
Đặc biệt, chức năng so sánh file rất hữu ích khi bạn có:
theme-bi-loi.xml
Bạn có thể tìm chính xác những đoạn đã thay đổi giữa hai phiên bản.
Phương pháp chia đôi để tìm lỗi
Nếu vừa chèn một đoạn code rất dài và không biết lỗi ở đâu, bạn có thể sử dụng phương pháp loại trừ.
Ví dụ đoạn code mới có 200 dòng:
- Xóa nửa sau và thử lưu.
- Nếu vẫn lỗi, vấn đề nằm ở nửa đầu.
- Nếu hết lỗi, vấn đề nằm ở nửa sau.
- Tiếp tục chia nhỏ khu vực nghi ngờ.
Cách này giúp thu hẹp vị trí lỗi nhanh hơn nhiều so với đọc từng dòng.
Nếu Blogger không thể khôi phục theme thì làm gì?
Nếu upload một file XML và Blogger báo không thể khôi phục, hãy kiểm tra:
- File có đúng phần mở rộng .xml không?
- File có bị mở và lưu lại bằng phần mềm làm thay đổi nội dung không?
- XML declaration có còn nguyên không?
- Các thẻ b:section và b:widget có còn hợp lệ không?
- File có bị thiếu phần cuối không?
- Có ký tự đặc biệt chưa được encode không?
- Có code JavaScript làm hỏng cấu trúc XML không?
Nếu có bản backup trước khi chỉnh, cách nhanh nhất vẫn là quay lại bản đó.
Không nên làm gì khi theme báo lỗi?
Khi Blogger báo không lưu được theme, tránh thực hiện hàng loạt thay đổi ngẫu nhiên.
Không nên:
- Xóa nhiều khu vực của theme cùng lúc.
- Xóa Blog1 khi chưa biết nguyên nhân.
- Xóa b:section chỉ để thử.
- Thay toàn bộ JavaScript cùng lúc.
- Dán liên tục nhiều bản code khác nhau.
- Khôi phục theme không rõ nguồn gốc.
- Tiếp tục sửa khi chưa có backup.
Quy trình 10 bước sửa lỗi theme Blogger
2. Xác định thay đổi cuối cùng trước khi lỗi xuất hiện.
3. Hoàn tác đoạn vừa sửa.
4. Kiểm tra dấu & và ký tự đặc biệt.
5. Kiểm tra tag mở và đóng.
6. Kiểm tra b:if, b:section và b:widget.
7. Kiểm tra widget ID trùng nhau.
8. Kiểm tra JavaScript và CDATA.
9. Lưu lại sau từng thay đổi nhỏ.
10. Khi sửa thành công, tạo một bản backup mới.
Checklist chẩn đoán nhanh
□ Tôi đã có file backup trước khi sửa
□ Đã kiểm tra đoạn code vừa thêm
□ Không có ký tự XML bất thường
□ Các tag đều được đóng đúng
□ Không thiếu dấu nháy trong thuộc tính
□ b:if được mở và đóng đúng
□ b:section không bị phá cấu trúc
□ Không có widget ID trùng
□ JavaScript nằm đúng vị trí
□ CDATA không bị xóa hoặc đóng sai
□ Script quảng cáo không bị chèn lặp không cần thiết
□ Script bên ngoài đã được kiểm tra nguồn
□ Sau mỗi lần sửa tôi đều thử lưu lại
Kết luận
Khi Blogger không lưu được theme, nguyên nhân thường không nằm ở toàn bộ giao diện mà chỉ ở một đoạn XML, JavaScript hoặc widget vừa được thay đổi.
Cách hiệu quả nhất không phải là sửa ngẫu nhiên, mà là: backup → xác định thay đổi gần nhất → kiểm tra từng phần → lưu thử sau mỗi lần sửa.
Sau khi theme đã có thể lưu bình thường, vấn đề tiếp theo mà nhiều người sử dụng theme tùy chỉnh gặp phải là: bài đăng đã xuất bản nhưng lại không hiển thị trên trang chủ.
Cách sao lưu và khôi phục theme Blogger an toàn
Bài tiếp theo →
Cách sửa lỗi bài đăng Blogger không hiển thị trên trang chủ
