Rewrite URL Tiếng Việt không dấu cho XenForo

Quá trình làm trên XenForo v1.1.2 , các phiên bản khác cũng tương tự.

Bước 1: Các bạn cần có một phần mềm PHP Editor (nên sử dụng Notepad ++)
Bước 2: Mở file XenForo v1.1.2/library/XenForo/Link.php, trên thanh menu của Notepad ++, các bạn chỉnh Encoding > Encode in UTF-8 without BOM


Bước 3: Tìm đoạn code sau


if ($romanize)
{
$title = utf8_romanize(utf8_deaccent($title));
}


Bước 4: Thêm vào bên dưới đoạn code sau :


$aPattern = array (
"a" => "á|à|ạ|ả|ã|ă|ắ|ằ|ặ|ẳ|ẵ|â|ấ|ầ|ậ|ẩ|ẫ|Á|À|Ạ|Ả|Ã|Ă|Ắ|Ằ|Ặ|Ẳ|Ẵ|Â|Ấ|Ầ|Ậ|Ẩ|Ẫ",
"o" => "ó|ò|ọ|ỏ|õ|ô|ố|ồ|ộ|ổ|ỗ|ơ|ớ|ờ|ợ|ở|ỡ|Ó|Ò|Ọ|Ỏ|Õ|Ô|Ố|Ồ|Ộ|Ổ|Ỗ|Ơ|Ớ|Ờ|Ợ|Ở|Ỡ",
"e" => "é|è|ẹ|ẻ|ẽ|ê|ế|ề|ệ|ể|ễ|É|È|Ẹ|Ẻ|Ẽ|Ê|Ế|Ề|Ệ|Ể|Ễ",
"u" => "ú|ù|ụ|ủ|ũ|ư|ứ|ừ|ự|ử|ữ|Ú|Ù|Ụ|Ủ|Ũ|Ư|Ứ|Ừ|Ự|Ử|Ữ",
"i" => "í|ì|ị|ỉ|ĩ|Í|Ì|Ị|Ỉ|Ĩ",
"y" => "ý|ỳ|ỵ|ỷ|ỹ|Ý|Ỳ|Ỵ|Ỷ|Ỹ",
"d" => "đ|Đ",
);
while(list($key,$value) = each($aPattern))
{
$title = @ereg_replace($value, $key, $title);
}


Ta cũng có thể dùng một cách khác với Bước 1 và Bước 2 tương tự:


Bước 3: Tìm đến dòng sau:


return strtr($title, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz');


Bước 4: Thêm lên trên đoạn code sau:


$aPattern = array (
"a" => "á|à|ạ|ả|ã|ă|ắ|ằ|ặ|ẳ|ẵ|â|ấ|ầ|ậ|ẩ|ẫ|Á|À|Ạ|Ả|Ã|Ă|Ắ|Ằ|Ặ|Ẳ|Ẵ|Â|Ấ|Ầ|Ậ|Ẩ|Ẫ",
"o" => "ó|ò|ọ|ỏ|õ|ô|ố|ồ|ộ|ổ|ỗ|ơ|ớ|ờ|ợ|ở|ỡ|Ó|Ò|Ọ|Ỏ|Õ|Ô|Ố|Ồ|Ộ|Ổ|Ỗ|Ơ|Ớ|Ờ|Ợ|Ở|Ỡ",
"e" => "é|è|ẹ|ẻ|ẽ|ê|ế|ề|ệ|ể|ễ|É|È|Ẹ|Ẻ|Ẽ|Ê|Ế|Ề|Ệ|Ể|Ễ",
"u" => "ú|ù|ụ|ủ|ũ|ư|ứ|ừ|ự|ử|ữ|Ú|Ù|Ụ|Ủ|Ũ|Ư|Ứ|Ừ|Ự|Ử|Ữ",
"i" => "í|ì|ị|ỉ|ĩ|Í|Ì|Ị|Ỉ|Ĩ",
"y" => "ý|ỳ|ỵ|ỷ|ỹ|Ý|Ỳ|Ỵ|Ỷ|Ỹ",
"d" => "đ|Đ",
);
while(list($key,$value) = each($aPattern))
{
$title = preg_replace('/'.$value.'/i', $key, $title);
}


Chúc bạn thành công

Công Til
Công Til
0946 85 95 77
Phước Tiền
Phước Tiền
0907 579 135
Xuân Dũng
Xuân Dũng
0946 188 955
Khánh An - TPHCM
Khánh An - TPHCM
01272 666 738
Chiền - Cần Thơ
Chiền - Cần Thơ
090 787 6996