Rewrite Url Tiếng Việt Không Dấu Đuôi Html Cho Xenforo

Thảo luận trong 'Công Nghệ' bắt đầu bởi Admin, 9 Tháng mười một 2015.

  1. Admin

    Admin Cho đi là còn mãi Thành viên BQT

    Bài viết:
    Tìm chủ đề
    1,067
    Để tạo link tiếng việt không dấu cho Xenforo các bạn mở file library\XenForo\Link.php tìm

    Mã:
    if ($romanize)
            {
                $title = utf8_romanize(utf8_deaccent($title));
            }
    Thêm vào bên dưới đoạn mã sau:

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

    Mã:
    public static function buildBasicLinkWithIntegerParam($prefix, $action, $extension, $data, $intField, $titleField = '')
        {
            if ((is_array($data) || $data instanceof ArrayAccess) && isset($data[$intField]))
            {
                self::prepareExtensionAndAction($extension, $action);
    
                $title = (($titleField && !empty($data[$titleField])) ? $data[$titleField] : '');
                return "$prefix/" . self::buildIntegerAndTitleUrlComponent($data[$intField], $title) . "/$action$extension";
            }
            else
            {
                return false;
            }
        }
    Thay toàn bộ bằng

    Mã:
    public static function buildBasicLinkWithIntegerParam($prefix, $action, $extension, $data, $intField, $titleField = '')
        {
            if ((is_array($data) || $data instanceof ArrayAccess) && isset($data[$intField]))
            {
                self::prepareExtensionAndAction($extension, $action);
    
                $title = (($titleField && !empty($data[$titleField])) ? $data[$titleField] : '');
                if($action=="" && $extension==""){
                return "$prefix/" . self::buildIntegerAndTitleUrlComponent($data[$intField], $title) . ".html";
                }else{
                return "$prefix/" . self::buildIntegerAndTitleUrlComponent($data[$intField], $title) . "/$action$extension";
                }
            }
            else
            {
                return false;
            }
        }
     
    Chỉnh sửa cuối: 9 Tháng mười một 2015
Đang tải...