Những điểm chính
1. Vì sao WordPress lỗi khi lưu bài viết có emoji?
Nguyên nhân chính là do database không hỗ trợ mã hóa 4 byte.
Nhiều máy chủ hoặc bảng dữ liệu WordPress cũ vẫn dùng utf8 (3 byte), trong khi emoji lại thuộc chuẩn utf8mb4 (4 byte).
Khi bạn nhập emoji vào bài viết:

2. Cách sửa lỗi lưu bài viết WordPress khi có ký tự emoji
Cách 1 – Mã hóa emoji trong nội dung bài viết (đơn giản nhất)
Thêm đoạn mã sau vào functions.php hoặc plugin snippets:
→ Khi bạn chèn emoji, WordPress sẽ tự mã hóa ký tự trước khi lưu vào database.
→ Database chỉ lưu dạng đã encode, giúp tránh lỗi 4 byte.
Cách 2 – Mã hóa toàn bộ vị trí có emoji (tiêu đề, excerpt, taxonomy, meta...)
Nếu emoji xuất hiện ở nhiều khu vực (title, category, custom fields…), bạn cần mở rộng filter để encode tất cả trước khi lưu.
→ Hạn chế tối đa lỗi “Incorrect string value” ở bất kỳ trường dữ liệu nào.
→ Nên thêm vào child theme hoặc plugin riêng để tránh bị ghi đè khi cập nhật theme.
Ưu — Nhược điểm
Ưu điểm:
Nhược điểm:
3. Dùng plugin Code Snippets (không cần sửa theme)
Nếu bạn không muốn sửa trực tiếp file theme:
-
Cài Code Snippets
-
Tạo đoạn snippet mới
-
Dán code fix emoji vào
-
Bật lên và kiểm tra thử với bài viết có emoji


→ Cách này an toàn hơn vì bạn không đụng tới file functions.php và dễ tắt/bật khi cần.
Lưu ý quan trọng