Sữa lỗi title Alias không hiển thị tiếng việt không dấu trong Joomla

Rate this post

Bạn sử dụng mã nguồn Joomla để tạo Website và trong quá tình tìm hiểu bạn gặp vấn đề đường dẫn của tiêu đề bài viết không thể hiện tiếng việt không dấu mà nó bị lượt bỏ một số chữ. Trong bài viết này, mình sẽ hướng dẫn các bạn cách khắc phục tình trang này.

Bạn có thể thay đổi đường dẫn thế nào?

Phiên bản Joomla! 2.5 mặc dù đã có chức năng Unicode Aliases, cho phép hiển thị tiếng Việt có dấu trong Title Alias nhưng vẫn chưa hỗ trợ tiếng Việt không dấu. Sau đây là cách sửa lỗi tiếng Việt trong Title Alias của Joomla! 2.5

Sữa lỗi title alias không hiển thị tiếng việt

Hướng dẫn sữa lỗi title alias không hiển thị tiếng việt trong Joomla

Đầu tiên, các bạn cần tìm File Output.php theo đường dẫn sau: /libraries/joomla/filter/output.php

Tiếp đến, tìm đoạn code như sau:

public static function stringURLSafe($string)
 {
 // remove any '-' from the string since they will be used as concatenaters
 $str = str_replace('-', ' ', $string);

$lang = JFactory::getLanguage();
 $str = $lang->transliterate($str);

// Trim white spaces at beginning and end of alias and make lowercase
 $str = trim(JString::strtolower($str));

// Remove any duplicate whitespace, and ensure all characters are alphanumeric
 $str = preg_replace('/(\s|[^A-Za-z0-9\-])+/', '-', $str);

// Trim dashes at beginning and end of alias
 $str = trim($str, '-');

return $str;
 }

Thay toàn bộ đoạn mà trên bằng đoạn code dưới đây

public static function stringURLSafe($string)

 {

 $trans = array(

 "đ"=>"d","ă"=>"a","â"=>"a","á"=>"a","à"=>"a",

 "ả"=>"a","ã"=>"a","ạ"=>"a",

 "ấ"=>"a","ầ"=>"a","ẩ"=>"a","ẫ"=>"a","ậ"=>"a",

 "ắ"=>"a","ằ"=>"a","ẳ"=>"a","ẵ"=>"a","ặ"=>"a",

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

 "ế"=>"e","ề"=>"e","ể"=>"e","ễ"=>"e","ệ"=>"e",

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

 "ư"=>"u","ô"=>"o","ơ"=>"o","ê"=>"e",

 "Ư"=>"u","Ô"=>"o","Ơ"=>"o","Ê"=>"e",

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

 "ứ"=>"u","ừ"=>"u","ử"=>"u","ữ"=>"u","ự"=>"u",

 "ó"=>"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",

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

 "Ý"=>"Y","Ỳ"=>"Y","Ỷ"=>"Y","Ỹ"=>"Y","Ỵ"=>"Y",

 "Đ"=>"D","Ă"=>"A","Â"=>"A","Á"=>"A","À"=>"A",

 "Ả"=>"A","Ã"=>"A","Ạ"=>"A",

 "Ấ"=>"A","Ầ"=>"A","Ẩ"=>"A","Ẫ"=>"A","Ậ"=>"A",

 "Ắ"=>"A","Ằ"=>"A","Ẳ"=>"A","Ẵ"=>"A","Ặ"=>"A",

 "É"=>"E","È"=>"E","Ẻ"=>"E","Ẽ"=>"E","Ẹ"=>"E",

 "Ế"=>"E","Ề"=>"E","Ể"=>"E","Ễ"=>"E","Ệ"=>"E",

 "Í"=>"I","Ì"=>"I","Ỉ"=>"I","Ĩ"=>"I","Ị"=>"I",

 "Ư"=>"U","Ô"=>"O","Ơ"=>"O","Ê"=>"E",

 "Ư"=>"U","Ô"=>"O","Ơ"=>"O","Ê"=>"E",

 "Ú"=>"U","Ù"=>"U","Ủ"=>"U","Ũ"=>"U","Ụ"=>"U",

 "Ứ"=>"U","Ừ"=>"U","Ử"=>"U","Ữ"=>"U","Ự"=>"U",

 "Ó"=>"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",);

//remove any '-' from the string they will be used as concatonater
 $str = str_replace('-', ' ', $string);

$str = strtr($str, $trans);
 $lang =& JFactory::getLanguage();
 $str = $lang->transliterate($str);

// remove any duplicate whitespace, and ensure all characters are alphanumeric
 $str = preg_replace(array('/\s+/','/[^A-Za-z0-9\-]/'), array('-',''), $str);

// lowercase and trim
 $str = trim(strtolower($str));
 return $str;
 }

Sau khi đã thực hiện xong, bạn tiến hành Save Lại và xóa cache để thấy hiệu quả.

Lưu ý: Phải chọn Unicode Aliases là No trong phần thiết lập cấu hình SEO/SEF của Joomla! 2.5 hoặc Joomla 3.0 để tránh đường dẫn hiển thị tiếng việt.

Ngoài ra, bạn cũng có thể tải file output.php mình đã làm sẵn ở phiên bản Joomla 3.0 thông qua liên kết này hoặc phiên bản Joomla 2.5.18 tại đây.

Tien Minh
Tien Minh

Mình là Tiến và sở thích lớn nhất của mình là đọc sách, đi du lịch, viết blog và học thêm một điều gì đó mới (có thể là thể thao, ngôn ngữ,...) những khi rỗi. Topthuthuat.com là đứa con tinh thần mà mình đã kiên trì phát triển được hơn 5 năm, hy vọng bạn sẽ tìm được nhiều điều "hay ho" khi ghé thăm trang blog này của mình.

Theo dõi
Thông báo
guest

0 Comments
Inline Feedbacks
View all comments
Thủ thuật máy tính - Tin học dành cho bạn
Logo