月光博客 » 编程开发 » WordPress中文标题转换拼音插件

WordPress中文标题转换拼音插件

  以前我开发了不少ASP的Z-Blog插件,随着WordPress在国内越来越流行,我也开始研究了一下WordPress插件的编程,今天我就发布一个WordPress中文标题自动转换拼音插件。

  插件简介:

  在使用WordPress过程中,当我们设置“自定义永久链接结构”包含postname的时候,我们发布的中文标题的文章就会出现很长的包含一大串%XX的字符串,很不美观,我做的这个插件,可以在发布文章的时候自动将postname的内容转化为中文汉语拼音,在自定义URL中以拼音的方式发布,看起来也美观一些。

  这个插件启用后,发布文章的“文章缩略名(Post Slug)”会自动变成文章标题的汉语拼音,例如,如果你发布一篇文章,标题是“中文拼音”,通常情况下WordPress会自动产生一个缩略名%e4%b8%ad%e6%96%87%e6%8b%bc%e9%9f%b3,如果你启用了“中文标题转换拼音插件”,则文章缩略名会变成zhongwenpinyin。这个缩写是在保存文章的时候产生的,因此你在发布文章前还可以对其进行修改,或者直接发布。这个插件对于以前已经存在的文章标题缩写是无效的,只对新文章有效,你可以通过删除旧文章后发布一篇新文章来自动产生这个拼音缩写。

  插件安装:

  这个插件的安装很简单,先下载插件文件,然后解压缩到wp-content/plugins目录下,然后在WordPress插件管理菜单启用PinYin Slug插件即可,不需要修改任何文件。

  插件的下载地址,请点这里下载

  这个插件的英文版介绍页面是:Wordpress Plugin: Chinese PinYin Slug

  版权协议:

  此插件基于GPL的许可协议的自由软件。插件的使用者可以:

  1. 以任何目的运行此程序的自由;
  2. 以学习程序工作机理为目的,对程序进行修改的自由;
  3. 再发行复制件的自由;
  4. 改进此程序,并公开发布改进的自由。

  这是我开发的第一个WordPress插件,希望大家能多提宝贵意见。最后感谢Hessian,他的“中文编码集合类库”大为减轻了这个插件的开发工作量。

顶一下 ▲()   踩一下 ▼()

相关文章

  1. 1
    溥杰   说道:
    为啥我更新后,搜索栏显示的是中文的字体,不是拼音的,难道里边还有语言程序不支持的么,请回答,谢谢
    支持(13反对(4回复
  1. 2
    与俺无关的俺   说道:
    你可以通过删除就文章后发布一篇新文章来自动产生这个拼音缩写

    怀疑有可能说不定是有错别字……

    月光叔叔还是在用骨骼拼音么?
    其实可以抽空做个统计,看看骨骼拼音、微软拼音、搜购拼音这些输入法的出错率高低,然后再blog一下……
    支持(10反对(3回复
  1. 3
    chen   说道:
    不支持Buddypress的群组链接改变啊!这个可以做出来吗?
    支持(11反对(4回复
  1. 4
    Fancy   说道:
    可不可以把文章缩略名会变成zhong-wen-pin-yin这样看起来更易读。
    支持(9反对(3回复
  1. 5
    博客精品翻译   说道:
    使用z-blog的时候就在使用你写的插件,后来转到了wordpress上,现在看到你写的wordpress插件后,感到十分的亲切。很好的插件,强烈推荐!
    支持(8反对(3回复
  1. 6
    corleniet   说道:
    太好了!就要这个!

    我的帖子2008年份就出了好多奥运会广告。我日死
    支持(9反对(4回复
  1. 7
    czeludzki   说道:
    谢谢你,真的很好用~
    支持(6反对(1回复
  1. 8
    似水年华   说道:
    很实用的插件。我就不用每次填写文章缩略名了
    支持(9反对(5回复
  1. 9
    game   说道:
    这个好用
    支持(9反对(5回复
  1. 10
    TanCee   说道:
    大哥,支持标签吗?
    现在文章都自定义,标签烦些~
    支持(8反对(4回复
  1. 11
    小明   说道:
    你好,月光。我尝试使用了你的插件,后来觉得不合适,就删掉了。但是效果还是部分残留。现在我的Post可以正常用其他的permalink,但是page就还是保持着这种百分号编码的形式。请问如何把page的permalink改成默认或者其他形式?
    支持(11反对(7回复
  1. 12
    猪笨无罪   说道:
    怎样让以前的旧文章的URL也变成拼音呢?
    支持(8反对(4回复
  1. 13
    小虫   说道:
    强烈建议此插件支持离线发布 再次强烈建议 希望给予重视
    支持(5反对(1回复
  1. 14
    补血   说道:
    文章页面倒是拼音,但是栏目页面没有,我设置栏目的时候没有在栏目啊设置,直接发布文章的时候在右侧添加栏目的,这是否是没有显示拼音还是中文的原因呢,盼回答,谢谢
    支持(7反对(3回复
  1. 15
    petcon   说道:
    用网易的飘过。。。。

    唉没有钱做自己的独立博客啊
    支持(6反对(3回复
  1. 16
    redleaffly   说道:
    好东西@!
    支持(5反对(2回复
  1. 17
    郁也风   说道:
    不错的东西,不过有个缺陷,如果标题里面有英文,这东东会把这些英文按字母截断,例如:测试slug效果,用这东西之后就是:ce-shi-s-l-u-g-xiao-guo
    支持(5反对(2回复
  1. 18
    ak47   说道:
    “插件chinesetitle2english-中文标题通过google翻译为英文语句”
    已经开发出来,欢迎到我那下载试用。
    支持(7反对(4回复
  1. 19
    moonswamp   说道:
    貌似有问题,文章标题可以转换,但是文章分类转换不了,还是老样子

    如果固定连接设置为 /分类/日志名 这样的格式,就出现这样的问题了!
    支持(5反对(2回复
  1. 20
    fire2   说道:
    是不是wp2.3里不能使用啊,如果是的话,老大升级下吧!!!谢谢。
    支持(6反对(3回复
  1. 21
    笑煞天   说道:
    十分感谢您的插件,非常有用.
    我想提一个建议,也希望您能考虑改进一下.
    启用了此插件后,WP原本的对英文标题的空格用"-"代替的功能失效了.
    这样的话,url会很不友好.
    而中文标题呢,同样也没有"-"分隔符,导致的问题就是标题如果很长,url同样很不友好.
    希望您能抽空修改一下,十分感谢,呵呵.
    支持(9反对(6回复
  1. 22
    风影   说道:
    这个插件挺不错的,但是,如果一长串,也不好看啊

    能否,把它一个字一个字分开,中间用"-"
    支持(7反对(4回复
  1. 23
    etiger   说道:
    刚下载在本地环境试用了,3.3.1英文版能正常转换中文为拼音。谢谢!
    支持(7反对(4回复
  1. 24
    Zx.MYS   说道:
    WP的插件机制真的太强了……
    支持(8反对(6回复
  1. 25
    蛋卷   说道:
    太好了,以后就不用每次都自己写缩略名了~
    支持(6反对(4回复
  1. 26
    qinai   说道:
    能不能给ZBLOG开发这样一个插件?
    支持(9反对(7回复
  1. 27
    Same.Feng   说道:
    前两天用WordPress开了博客,下一个来试试……
    支持(6反对(4回复
  1. 28
    williamlong   说道:
    是的, 那个地址用的就是WordPress 。
    支持(5反对(3回复
  1. 29
    riku   说道:
    如果用离线工具发布的话,它不会自动转换.另外拼音对于SEO的用处好像不大,所以如果只能在线写文章的话,个人认为还是手工改成英文的比较好.
    我在zoundry下测试的.
    建议月光是否能再改进一下.
    支持(5反对(3回复
  1. 30
    刘云   说道:
    台有用的插件啦~~~太!!
    支持(7反对(5回复
  1. 31
    育儿   说道:
    我也是用post-slug为每篇文章填拼音,但是有两个问题,第一,感觉url中用拼音对中文搜索引擎的效果好像并不大,另外中文标题变成拼音后好像太长了。两难!
    支持(6反对(4回复
  1. 32
    lelige   说道:
    下载了插件试用一下~~
    支持(2反对(0回复
  1. 33
    52592   说道:
    我试试好用不
    支持(7反对(5回复
  1. 34
    思乐志   说道:
    其中的一个代码改成这样比较好
    $title = str_replace(" ","-",$title);
    支持(6反对(4回复
  1. 35
    雪箭   说道:
    好啊,不知道现在还能用吗
    支持(5反对(3回复
  1. 36
    williamlong   说道:
    Z-Blog不支持类似WordPress的这种插件机制,只能手动修改Z-Blog的内部源代码。
    支持(3反对(2回复
  1. 37
    asing   说道:
    月光大大能不能做成每个中文字用-来分隔呢?这样应该对搜索引擎更友好的吧
    支持(6反对(5回复
  1. 38
    路途志   说道:
    月光的博客好像没用这个插件
    支持(5反对(4回复
  1. 现在要用下面的这两个格式才可以打得开
    日期和文章名
    月份和文章名

    能不能自定义结构里

    只用/%postname%/
    支持(5反对(4回复
  1. 40
    lelige   说道:
    WP 2.9.2试用失败
    Parse error: syntax error, unexpected $end in /home/content/31/6075931/html/lelige/wordpress/wp-content/plugins/pinyin-slug/class.Chinese.php on line 261
    支持(4反对(3回复
  1. 41
    思乐志   说道:
    还是对SEO不够友好,应该是每个字的拼音之间用"-"连接
    支持(6反对(5回复
  1. 42
    mtoou   说道:
    有没有办法让tag自动也转换成拼音字母啊?
    支持(6反对(5回复
  1. 43
    petcon   说道:
    建议月光改进留言提交的方式

    用ctrl+enter就可以提交就好了

    每次用鼠标点很麻烦
    支持(3反对(3回复
  1. 44
    williamlong   说道:
    我现在改用搜狗拼音了,感觉拼音错误比谷歌的要少一些,但还是有错误。
    支持(5反对(5回复
  1. 45
    abncd   说道:
    恩,不错~
    搜狗的挺实用~
    支持(11反对(11回复
  1. 46
    dawnh   说道:
    每次写文章都自己加上英文的postslug现在几乎是我学习英文的唯一动力了.难道你连这点都要剥夺吗?
    :)
    支持(6反对(6回复
  1. 47
    Tsinlan   说道:
    用了下,感觉还不错呢,要是能开发出分词功能那就更完美了:-)
    支持(6反对(6回复
  1. 48
    danceka   说道:
    我现在就去安上看看
    支持(6反对(6回复
  1. 49
    bihicheng   说道:
    标题能支持汉字到拼音的转换,汉字标签在URL也出现类似的“乱码”,我找了挺多都没找到,应该跟标题转换成拼音差不多吧。您肯定会,是不是本来就有我不知道呢?
    支持(8反对(8回复
  1. 50
    ylsnuha   说道:
    用上了 最主要还是给别人用的 。。。
    支持(6反对(6回复
  1. 51
    williamlong   说道:
    WP的插件机制的确非常不错,插件的编写和应用都非常简单易用,唯一牺牲的就是性能了。
    支持(5反对(6回复
  1. 52
    Taoii   说道:
    Wordpress的性能也不差啊,严重值得使用啊
    支持(3反对(4回复
  1. 53
    我爱水煮鱼   说道:
    我每次都是手工更改的,喜欢用英文的 post slug,呵呵
    不过这个插件确实不错!
    支持(4反对(5回复
  1. 54
    williamlong   说道:
    离线工具发布的话无法触发那个插件,所以对离线发布工具是无效的。如果Google提供翻译接口的话,也很容易实现自动将中文翻译为英文的。
    支持(5反对(6回复
  1. 55
    ppdan   说道:
    这个不错!不过我觉得直接用id号也行,后者速度还更快!:)
    支持(4反对(5回复
  1. 56
    AAA   说道:
    好问
    支持(2反对(3回复
  1. 57
    jrek   说道:
    好像看见你登出了一个 提供 wp 空间的信息,怎么现在又看不到那条信息了呢?
    支持(5反对(6回复
  1. 58
    fire2   说道:
    我在wp2.3里试安了下,结果没有转换的效果,中文名的文章,伪静态链接还是乱的,没变成拼音。
    支持(4反对(5回复
  1. 59
    rain   说道:
    安装了拼音插件后...如果导入rss文件时,会出现不能重复声名类chinese的问题.有时间的话改下吧.谢谢啦.
    支持(4反对(5回复
  1. 60
    323   说道:
    用上了。。非常感谢啊
    支持(5反对(6回复
  1. 61
    next   说道:
    能不能实现不翻译,只是简单的把中文去掉而只保留英文和数字?

    支持(6反对(7回复
  1. 62
    Cn   说道:
    Hello,你的插件在3.3.1使用后发布文章一片空白。望解决。
    支持(7反对(8回复
  1. 63
    petcon   说道:


    搜狗的拼音稍微好点
    支持(3反对(5回复
  1. 64
    拼音加加   说道:
    拼音加加好,更实用
    支持(2反对(4回复
  1. 65
    colinzhu   说道:
    很棒的插件,没想到你还没开始用wordpress,就先开始写wordpress的插件了。
    支持(4反对(6回复
  1. 66
    cokar   说道:
    真羡慕你的博客,seo做得这么好。哪都能搜索到这里,订阅了哦....呵呵
    支持(7反对(9回复
  1. 67
    核桃   说道:
    好东西。WP好像是很猛,可惜自己对PHP实在是太烂,不然也要拿来感受一下!
    支持(4反对(6回复
  1. 68
    cosbeta   说道:
    一直在等待google的翻译接口,要不早就整了这个插件了,不知道你的拼音的接口是哪里的?
    支持(4反对(6回复
  1. 69
    danceka   说道:
    好东西,要不发表的时候还要手动改!
    支持(6反对(8回复
  1. 70
    子非鱼   说道:
    谢谢月光,以前用bsp 时还有一个文章别名功能(完全自命名的) 很方便
    现在自己搭建的wp 就没有了,不知道有没有那样的插件,期待您的大作。
    支持(6反对(8回复
  1. 71
    alikefu   说道:
    我现在用的中文搜索功能中的中文分词功能不能用了!请问有没有别人也会出这个问题!
    支持(2反对(4回复
  1. 72
    纽曼德   说道:
    大哥 这个插件不错 我这个纽曼德博客发文章 自动中文路径 在找自动生成英文的 插件
    支持(6反对(8回复
  1. 73
    汪小侃   说道:
    月光我真的很佩服你,太牛了。。。
    支持(4反对(6回复
  1. 74
    Jiang   说道:
    这个功能之前有网友提过,似乎也有人做过;不过要转换拼音的话,至少得附带一个汉字库,从效率角度上讲,的确不太值得。

    不过,相信也会有不少网友喜欢这个功能的,多一个选择总是好的。
    支持(7反对(10回复
  1. 75
    hmm   说道:
    hmmm~!!
    支持(3反对(6回复
  1. 76
    awflasher   说道:
    虽然用不上,还是辛苦了:)
    支持(5反对(8回复
  1. 77
    Gr.Zhang   说道:
    开启后,我这里不能发布文章,很郁闷
    支持(1反对(4回复
  1. 78
    没趣鱼   说道:
     呵呵。找到啦。谢谢月光
    支持(1反对(4回复
  1. 79
    sakura   说道:
    不知道安装了cos-html-cache后安装这个插件好不好用?
    支持(3反对(6回复
  1. 80
    魂魄追风   说道:
    哈哈,这个东西真不错
    支持(7反对(11回复
  1. 81
    沙漠之子   说道:
    建议将.table的后缀名改为txt的说
    因为有些服务器对文件后缀名有过滤机制的说
    一般html,php(php主机),txt,jpg.png等文件后缀名的文件是放行的,其他就很难说了
    支持(3反对(7回复
  1. 82
    缘分   说道:
    谢谢。翻译成拼音的 还是英文的好呢?
    支持(5反对(9回复
  1. 83
    欣逸   说道:
    牛B 正在找这样的插件呢
    支持(1反对(5回复
  1. 84
    williamlong   说道:
    我有用WordPress的,我的英文博客就是用的WordPress。
    支持(6反对(11回复
  1. 85
    Tsinlan   说道:
    嗯,这个插件的确不错呢。不过用这个插件发表文章速度会变慢吧?
    下载下来用一下:-)
    支持(4反对(9回复
  1. 86
    dureci   说道:
    如果中文标题长,这个会不会url也很长呢?
    支持(3反对(8回复
  1. 87
    柳净园   说道:
    太有用了,我正找这个呢!
    支持(4反对(10回复
  1. 88
    sheva   说道:
    %e4%b8%ad%e6%96%87%e6%8b%bc%e9%9f%b3这样的形式 人看起来确实不舒服,但是google之类的搜索引擎还是读得懂的。
    支持(3反对(10回复
  1. 89
    Jay   说道:
    一点建议:

    1、zhongwenpinyin 可以考虑改成zhong-wen-pin-yin 的形式,因为后者对搜索引擎和读者来说可能更友好一些;

    2、一旦中文标题过长时,可以考虑截取前面若干个字生成拼音缩略名,不然的话自动生成的拼音缩略名会非常长。
    支持(3反对(10回复
  1. 90
    williamlong   说道:
    楼上,你将插件中的$title = str_replace(" ","",$title)这一行删除就可以达到你要的效果。
    支持(2反对(10回复
  1. 91
    王秋平   说道:
    不得佩服楼住一下,这也算是有中国特色的wp插件,很多人经常用老外的插件,老外根本没有那方面问题的。而造成国内人没有想到可能因为:
    1\国内linux主机大多不支持rewrite
    2、会用的人大多使用英文,一般英文使用没有问题的,所以不存在这个需求
    3、拼音实在是太长,十个字属于比较短的,至少有30个字母以上的文件名
    4、对于url中是否出现关键字,中文seo效果没有英文那么有效果
    支持(2反对(10回复
  1. 92
    paopao   说道:
    不错的插件,挺实用的
    支持(4反对(12回复
  1. 93
    你莫愁   说道:
    终于做了你月光的一次沙发~虽然我用的不是ZBLOG!但是还是替那些使用者感谢你!
    ------------Only∑愁莈展
    支持(3反对(25回复

发表留言