Jan 04

Xử lý dấu tiếng Việt - Link URL thân thiện SEO

Tại sao cần thân thiện hoá đường dẫn URL ?

Trong quá trình lập trình xử lý tiếng Việt (search, SEO, thao tác chuỗi ký tự ..) các bạn sẽ gặp phải vấn đề xử lý chuỗi tiếng Việt có dấu.

Trong khuân khổ bài viết, tớ chỉ xin đề cập tới ứng dụng trong SEO. Nếu ai quan tâm đến SEO thì không thể bỏ qua phương pháp viết lại đường dẫn (url rewrite, mod_rewrite hay còn gọi là Friendly URL gọi tắt là FURL) giúp cho đường link gọn, ý nghĩa và có thể chèn thêm từ khóa trong đường dẫn FURL này.

Thông thường rất nhiều Webmaster sẽ lấy tiêu đề (title) hay phần miêu tả (description) để nhúng vào đường dẫn FURL. Để tránh các ký tự đặc biệt bị thay bởi mã HTML trong địa chỉ URL trên thanh địa chỉ của trình duyệt (adress bar), người ta thường xử lý loại bỏ hoặc thay thế các ký tự đặc biệt này bằng các ký tự tương đương trong bẳng mã HTML.

Với tiếng Anh hay các ngôn ngữ gốc Latin khác thì khá đơn giản. Nhưng khi xử lý chuỗi tiếng Việt để đưa tiêu đề vào FURL chẳng hạn thì có nhiều trường hợp. Phải liệt kê hết các ký tự đặc biết.

Phần hướng dẫn này mình sẽ chia sẻ cho các bạn các hàm PHP, JavaScript để xử lý chuỗi dấu tiếng Việt.

Hàm PHP xử lý dấu tiếng Việt

Hàm tiếp theo cũng tương tự

Đoạn mã trên sẽ in ra màn hình dòng chữ sau:

That la lam chuyen

Một bản khác dùng hàm preg_replace (tớ thích dùng hơn)

Hàm Javascript

Xử lý tiếng Việt cho Invision Power Board

Còn đây là hàm mà tớ sử dụng để viết lại đường dẫn FURL cho diễn đàn Invision Power Board với bẳng mã ISO-8859-1


Link demo FURL với Invision Power Board :
Sinh viên Việt Nam FURL Rewrite.

Xử lý tiếng Việt cho Blogger WordPress

Với những người sử dụng blog WordPress nếu không chỉnh sửa đường dẫn bằng Post Slug thì khi bạn viết một tiêu đề tiếng Việt, các nguyên âm có dấu sẽ bị chuyển mã hó dạng %xx không thân thiện tí nào. Theo tác giả Quang Anh (onetruebrace.com) thì WordPress sử dụng hàm mang tên sanitize_title_with_dashes để chuyển đổi tiêu đề thành permalink có dấu ngạch ngang phân cách các từ :
add_filter(’sanitize_title’, ’sanitize_title_with_dashes’);

Tất cả những gì phải làm là thực thi hàm xử lý tiếng Việt có dấu sang dạng không dấu ngay trước hàm sanitize_title_with_dashes:

Tags: php, invision ipb, tiengviet, tieng-viet, furl, url rewrite, wordpress furl, rewrite, lien ket, search, SEO, ipb, mod_rewrite

Chủ đề tượng tự

2 trả lời cho “Xử lý dấu tiếng Việt - Link URL thân thiện SEO”
  1. Saokim999 Says:

    Cho mình hỏi nếu diễn đàn IBF dùngmax utf-8 thì bảng tren có dùng được ko
    Cách tạo FURL như http://aevn.fr/index.php ban có thẻ chỉ ko^^. mình dungbanf ibf 2.3.4
    ym: saokim_yrc
    thx

  2. quang ba Web Says:

    Bảng trên chính là dùng cho UTF-8 đó bạn, còn nếu muốn viết FURL như thế thì cậu có thể tham khảo MinvervaSEO trên Google nhé. Sau đó phải sửa lại code khác nhiều để tối ưu. Kết hợp với mấy hàm xử lý ký tự trên thì là rất tuyệt.

    Chúc thành công.

Leave a Reply