Laravel Slug中文網址優化技巧,以FAVEO HELP DESK為例 3
Laravel Slug中文網址優化技巧,以FAVEO HELP DESK為例 3

網址優化對搜尋引擎行銷而言,不只是重要而已,還是「最重要」,但中文網址的優化在國外的Framework裡通常支援度不足,甚至直接在slug的欄位,顯示不出來,只出現空白,因為辨識不出來,怎麼解決呢?看看LARAVEL怎麼只改一行就支援中文。

FAVEO HELP DESK TICKETING SYSTEM

一套好用的CRM軟體通常所費不孜,常常花了很多時間測試,到了最後才發現,竟然網址不支援中文,有種令人要吐血的感覺,畢竟花了那麼多的時間成本了。

Laravel Slug中文網址優化技巧,以FAVEO HELP DESK為例 1
Laravel Slug中文網址優化技巧,以FAVEO HELP DESK為例 – 中文網址無法正常使用

只要改一行程式,就支援中文網址

    public static function slug($title, $separator = '-')
    {
        $title = static::ascii($title);

        // Convert all dashes/underscores into separator
        $flip = $separator == '-' ? '_' : '-';

        $title = preg_replace('!['.preg_quote($flip).']+!u', $separator, $title);

        // Remove all characters that are not the separator, letters, numbers, or whitespace.
        $title = preg_replace('![^'.preg_quote($separator).'\pL\pN\s]+!u', '', mb_strtolower($title));

        // Replace all separator characters and whitespace by a single separator
        $title = preg_replace('!['.preg_quote($separator).'\s]+!u', $separator, $title);

        return trim($title, $separator);
    }

程式看似複雜,其實總有脈絡可尋,關鍵字是「Slug」,找到這段程式之後呢?

    public static function slug($title, $separator = '-')
    {
        //$title = static::ascii($title);

        // Convert all dashes/underscores into separator
        $flip = $separator == '-' ? '_' : '-';

        $title = preg_replace('!['.preg_quote($flip).']+!u', $separator, $title);

        // Remove all characters that are not the separator, letters, numbers, or whitespace.
        $title = preg_replace('![^'.preg_quote($separator).'\pL\pN\s]+!u', '', mb_strtolower($title));

        // Replace all separator characters and whitespace by a single separator
        $title = preg_replace('!['.preg_quote($separator).'\s]+!u', $separator, $title);

        return trim($title, $separator);
    }

只要把第3行程式remark掉,其實就可以支援中文網址囉!

Laravel Slug中文網址優化技巧,以FAVEO HELP DESK為例 2
Laravel Slug中文網址優化技巧,以FAVEO HELP DESK為例 – 正常顯示中文網址

最重要的是,只要改這一行,所有的功能都正常,就支援中文網址了。

看懂程式的重要性

在這個資訊時代,不一定要會寫高深的程式,但一定要看的懂程式,常常一個小東西請別人改要花幾萬元,但是自已只要幾小時,而且請別人改小東西要「等」,自已動手DIY完全不用等。

註:FAVEO Help Desk Ticketing System

回覆留言

Please enter your comment!
Please enter your name here