Loại bỏ dấu tiếng Việt trong Drupal

Loại bỏ dấu tiếng Việt trong Drupal

 

Để tiến hành “công cuộc” SEO cho trang web của mình, người ta thường muốn đưa tiêu đề bài viết vào URL. Cách này giúp cho search engine đánh trọng số cao hơn trong các kết quả tìm kiếm. Vì vậy nên đa số người sử dụng Pathauto trên drupal để tự động thêm tiêu đề vào url.

 

Sau khi cài đặt bạn có thể vào phần Admin > URL alias > Automated alias settings để tùy chỉnh định dạng url, theo ý bạn. Tuy nhiên, bạn sẽ gặp một số rắc rối với tên tiếng Việt, tựa như: “loại-bỏ-dấu-tiếng-việt”. Các URL kiểu như thế có vẻ hay, nhưng thật sự không hay, vì các search engine rất khó mà hiểu được nó, hơn nữa, một số trình duyệt lại không hiểu (hoặc hiểu sai) URL có tiếng Việt như thế, và kết quả là Page not found. Cách tốt nhất là nên loại bỏ dấu, trở thành: “loai-bo-dau-tieng-viet”.

Để loại bỏ dấu của tiếng việt trong URL bạn vào đường dẫn sau: admin/build/path/pathauto và cấu hình module Pathauto như hình sau:

Tại check box màu đỏ ban đầu nó sẽ bị disable do không có file i18n-ascii. Trong thư mục của module Pathauto đã có môt file mẫu là i18n-ascii.example.txt nhưng chưa đầy đủ.

 

  1. Vào phần tùy chỉnh Automated alias settings, và click chọn Transliterate prior to creating alias.
  2. Mở thư mục modules/pathauto, và đổi tên file i18n-ascii.sample.txt thành i18n-ascii.txt, sau đó mở nó lên và thêm phần của tiếng Việt vào
  3. Cuối cùng là lưu nó và tạo một bài viết mới, nhớ chọn Automatical alias trong bài viết mới.

 

Một cách khác đơn giản hơn và có thể áp dụng ở mọi nơi kể cả wordpress, joomla,… đó là sử dụng tính năng chuyển bảng mã của Unikey. Trước hết bạn thiết lập Unikey bằng cách bấm chuột phải vào biểu tượng của Unikey > Công cụ. Sau đó chọn mã nguồn và đích đều là Unicode, và click chọn Loại bỏ dấu, chọn tiếp Chuyển mã clipboard. Sau khi có được url chứa tiếng Việt có dấu, bạn chọn nó, rồi bấm Ctrl-C (Copy), Ctrl-Shift-F9 (chuyển mã tự động), rồi Ctrl-V (Paste)… Thế là xong.

 

Lưu ý, với trường hợp bạn dùng pathauto, tôi có tìm được một cái áp dụng cho tiếng Việt, bạn có thể chép vào cuối file i18n-ascii.txt: (Nguồn: http://mrbuom.wordpress.com/2009/11/23/g%E1%BB%A1-b%E1%BB%8F-cac-d%E1%BA...)

 

à = "a"
á = "a"
ả = "a"
ã = "a"
ạ = "a"

ă = "a"
ằ = "a"
ắ = "a"
ẳ = "a"
ẵ = "a"
ặ = "a"

â = "a"
ầ = "a"
ấ = "a"
ẩ = "a"
ẫ = "a"
ậ = "a"

À = "a"
Á = "a"
Ả = "a"
à = "a"
Ạ = "a"

Ă = "a"
Ằ = "a"
Ắ = "a"
Ẳ = "a"
Ẵ = "a"
Ặ = "a"

 = "a"
Ầ = "a"
Ấ = "a"
Ẩ = "a"
Ẫ = "a"
Ậ = "a"

đ = "d"
Đ = "d"

è = "e"
é = "e"
ẻ = "e"
ẽ = "e"
ẹ = "e"

ê = "e"
ề = "e"
ế = "e"
ể = "e"
ễ = "e"
ệ = "e"

È = "e"
É = "e"
Ẻ = "e"
Ẽ = "e"
Ẹ = "e"

Ê = "e"
Ề = "e"
Ế = "e"
Ể = "e"
Ễ = "e"
Ệ = "e"

ì = "i"
í = "i"
ỉ = "i"
ĩ = "i"
ị = "i"

Ì = "i"
Í = "i"
Ỉ = "i"
Ĩ = "i"
Ị = "i"

ò = "o"
ó = "o"
ỏ = "o"
õ = "o"
ọ = "o"

ô = "o"
ồ = "o"
ố = "o"
ổ = "o"
ỗ = "o"
ộ = "o"

ơ = "o"
ờ = "o"
ớ = "o"
ở = "o"
ỡ = "o"
ợ = "o"

Ò = "o"
Ó = "o"
Ỏ = "o"
Õ = "o"
Ọ = "o"

Ô = "o"
Ồ = "o"
Ố = "o"
Ổ = "o"
Ỗ = "o"
Ộ = "o"

Ơ = "o"
Ờ = "o"
Ớ = "o"
Ở = "o"
Ỡ = "o"
Ợ = "o"

ù = "u"
ú = "u"
ủ = "u"
ũ = "u"
ụ = "u"

ư = "u"
ừ = "u"
ứ = "u"
ử = "u"
ữ = "u"
ự = "u"

Ù = "u"
Ú = "u"
Ủ = "u"
Ũ = "u"
Ụ = "u"

Ư = "u"
Ừ = "u"
Ứ = "u"
Ử = "u"
Ữ = "u"
Ự = "u"

ỳ = "y"
ý = "y"
ỷ = "y"
ỹ = "y"
ỵ = "y"

Y = "y"
Ỳ = "y"
Ý = "y"
Ỷ = "y"
Ỹ = "y"
Ỵ = "y"

—————

 

Bài viết này có sử dụng thông tin từ blog của Nguyễn Trung Kiên (http://my.opera.com/trunghaiy) và blog của Mr.Bướm (http://mrbuom.wordpress.com). Chân thành cảm ơn đóng góp của hai bạn, và cũng xin lỗi vì đã không xin phép trước. Nếu bài viết của tôi có vi phạm bản quyền của bạn thì xin thông báo qua email (contact@hoaiphan.com) để tôi gỡ nó xuống.

Ngoài cách trên, ta có thể sử dụng kết hợp module Pathauto + Transliteration.

Sau khi Enable 2 module này, bạn hãy vào mục Configuration>Search and Metadata>URL Aliases> Tab Setting, Tick chọn 2 option: Transliterate prior to creating alias Reduce string to letters and numbers.