icyleaf 发表于 2008-8-6 17:26:19

SEO友好化URL(支持中文转换)

之前翻译了一篇关于《如何使用PHP代码SEO你的URL》的文章:
比如说,我现在从数据库提取出来一篇文章,那么改怎样把标题优化为URL?
再举个例子,我想把标题“Welcome to Beijing 2008 Olympic Games”优化为“welcome-to-beijing-2008-olympic-games”,甚至是把法语“Guantanamo: le chauffeur de Ben Laden plaide non coupable à l'ouverture de son procès”优化为"guantanamo-le-chauffeur-de-ben-laden-plaide-non-coupable-a-l- ouverture-de-son-proces.html"
里面的方法很简单,这里在简单描述一下。
首先,也是最重要的是,本方法不用考虑是否提供 mod_rewrite 模块就可以实现,是不是很棒?
其次,使用正则表达式来完成URL的转换。支持英语系(包括法语)的转换
最后,参考生活点滴的cosbeta所写的WordPress插件cos_slug_translator插件(其实使用的Google的翻译功能)的核心代码完成了中文转换为英文的功能,最后在调用friendlyurl方法SEO URL。

最近刚接触CI框架,所以把这个功能写了一个小的helper。使用方法很简单:
新建一个控制器friendlyurl.php

    class Friendlyurl extends Controller{
      function index()
      {
            $this->load->helper("seo_url");
            $string1 = "我是中国人!";
            $string2 = "私日本語を話す";
            $string3 = "포럼사무실";
            echo $string1." -> ".seo_url::translate($string1,"chinese")." -> ".seo_url::friendlyurl(seo_url::translate($string1))."<br />";
            echo $string2." -> ".seo_url::translate($string2,"japanese")." -> ".seo_url::friendlyurl($string2, true)."<br />";
            echo $string3." -> ".seo_url::translate($string3)." -> ".seo_url::friendlyurl($string3, true)."<br />";
      }
    }

里面包括了中文,日语,汉语3国语言来测试,首先加载helper:seo_url。
此类包含两个方法:translate和friendlyurl
其他的看这些代码就应该明白了,我就不多少了:)


初次使用+发贴如有错误请指正

[ 本帖最后由 icyleaf 于 2008-8-7 09:45 编辑 ]

icyleaf 发表于 2008-8-25 23:20:23

没有人关注这个哦。。。。

Hex 发表于 2008-8-25 23:59:42

怎么会没人关注呢?我来给你加分先!

kissmumu 发表于 2008-8-26 08:53:40

郁闷,今天才看到:Q

protang 发表于 2008-10-17 09:08:25

这个要调用google的API, 速度上是不是太慢了些呀

cocely 发表于 2008-10-21 10:35:29

韩语写成汉语了:L

sam 发表于 2008-10-21 10:46:29

暂时用不到,先收藏。。。

raptor 发表于 2009-3-22 09:00:47

这样做真的不是很好,URL最好还是英文
反正汉语就不太好
收藏

savasun 发表于 2010-7-12 14:51:07

纯支持:handshake

vsda2008 发表于 2011-4-2 15:14:36

收藏下......
页: [1] 2
查看完整版本: SEO友好化URL(支持中文转换)