Learn how to seo tips

Tạo URL Tiếng Việt KHÔNG DẤU cho XenForo

Discussion in 'Thắc Mắc - Góp Ý' started by dangvanlel, 12/3/14.

  1. dangvanlel

    dangvanlel Level 1

    Ví tiền:
    $824,90
    Mình thấy hiện tại ADMIN để mặc định cách tạo URL của diễn đàn theo chuẩn UTF-8 dựa vào TITLE của bài viết. Điều này làm cho URL sẽ mang Tiếng Việt có dấu. URL có dấu sẽ làm phát sinh rất nhiều vấn đề trên INTERNET. Admin nên điều chỉnh để sử dụng URL Tiếng Việt KHÔNG dấu bằng cách can thiệp trực tiếp vào CODE của XenForo.

    Hướng dẫn:

    CÁCH THỨ 1: tạo bộ lộc ngay sau khi đã lấy tiêu đề


    Trong file: /library/XenForo/Link.php tìm đến dòng code thứ 674 với nội dung tương tự như sau:

    Code:
    if ($romanize)
            {
                $title = utf8_romanize(utf8_deaccent($title));
            }
    Thêm vào sau đoạn code trên một đoạn để lộc ký tự có dấu như sau:

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

    CÁCH THỨ 2: tạo bộ lộc trước khi trả lại kết quả tiêu đề


    Cũng trong file: /library/XenForo/Link.php tìm đến dòng code có nội dung tương tự như sau:

    Code:
    return strtr($title, 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz');
    Thêm vào phía trên dòng code đó một đoạn code tạo bộ lọc như sau:

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

    LƯU Ý:


    Trong trường hợp URL tạo ra có phần index.php? thì vào ACP/Opition/Basic Board Information và tick chọn Use Full Friendly URLs để cho phép XenForo tạo ra URL không chứa index.php


    PS: Phần này mình chưa TEST, nhưng nó tương tự như những FORUM PHP khác. Am hiểu CODE thì có thể dựa vào bài viết này mà làm được.
    spamhunter likes this.
  2. dieuhoahn

    dieuhoahn Level 0

    Ví tiền:
    $502,22
    Mình nghĩ là URL không cần có dấu như vậy sẽ không tối ưu về URL cho seo
  3. feedingtea

    feedingtea Level 0

    Ví tiền:
    $497,59
    Chỉ cần chèn vào là oke à bác? Tại phần code với mã này em không biết gì luôn! :)
  4. mauhuan

    mauhuan Level 0

    Ví tiền:
    $212,18
    Tk bác, bài viết rất hữu ích
  5. proseo12

    proseo12 Level 0

    Ví tiền:
    $368,33
    Admin nên điều chỉnh để sử dụng URL Tiếng Việt KHÔNG dấu bằng cách can thiệp trực tiếp vào CODE của XenForo.
  6. linhsq

    linhsq Banned

    Ví tiền:
    $912,65
    Cái này là ý kiến với Admin mà, với bác thì có hữu ích gì đâu
  7. Invisible

    Invisible Level 0

    Ví tiền:
    $676,33
    Cái này có 1 add-ons url không dấu thì phải, đỡ phải mất công :D
  8. caothanhtrung87

    caothanhtrung87 Moderator Staff Member Mod

    Ví tiền:
    $10.193,89
    cái này muốn nhanh thì cài addon, 3 nốt nhạc là xong :D

Share This Page