Slug tiếng Việt là chỗ mà rất nhiều hệ thống làm sai: để nguyên dấu thành chuỗi %E1%BB%91 , quên chữ "đ", giữ cả câu tiêu đề mười mấy chữ, hoặc để CMS âm thầm thêm -2 . Bài này viết một slug generator cho tiếng Việt và một bước kiểm tra trùng, dựa trên những gì tài liệu cấu trúc URL của Google Search Central khuyến nghị.
Google khuyến nghị gì
Dùng dấu gạch ngang để tách từ, không dùng gạch dưới và không viết liền.
URL phân biệt chữ hoa, chữ thường, nên /Collagen và /collagen là hai địa chỉ khác nhau.
Từ khóa trong đường dẫn gần như không ảnh hưởng thứ hạng ngoài breadcrumb. Mục tiêu là URL rõ nghĩa và ổn định, không phải nhồi từ khóa.
Khi đổi URL lâu dài, dùng chuyển hướng phía máy chủ loại vĩnh viễn như 301.
Bỏ dấu tiếng Việt đúng cách
Chuẩn hóa Unicode NFD tách dấu ra khỏi chữ, nhưng chữ "đ" không phải chữ "d" có dấu, nên phải xử lý riêng:
import re import unicodedata
def bo_dau ( s : str ) -> str : s = s . replace ( " đ " , " d " ). replace ( " Đ " , " D " ) s = unicodedata .…