怎样在离线撰写时设置文章的缩略名(postname in Wordpress/Yo2)

一直以来,用ScribeFire用的很习惯了,但是总有一点别扭的地方就是postname的处理似乎无能为力,最直接的方法就是到管理后台去手动修改。但是,Yo2的管理后台的速度,一向不怎么让我满意,所以离线撰写,然后再回头在线修改,这个方法实在有点无力。

所以,相当长的一段时间里,我都是忍受着用post_id来作为永久链接的方法,直到有一天,我自己都被我的那些/2008/xx/xx/123456?之类的链接名搞得有些晕菜的时候,才下了决心来使用正儿八经的缩略名了/2008/xx/xx/to-do-what之类的名字感觉会好很多,哪怕不顾从前的那些也只能壮士断腕了。

那么解决方法有哪些呢?本人不是专家,依然只能焚香沐浴,然后求助google天使和百度土地了,发现方法还是有很多的。按照惯例,都来列举,最后再推荐一下最理想的方法;

首先,独立的Wordpress博客,可以自行编辑wp的源文件,这个…坦白讲,我不懂,我是菜鸟;

然后,如果是Windows Live Writer的用户,那也非常的省心,因为Live Writer对tag以及缩略名postname的支持相当的不错,只要在底部的数据域当中自己填上缩略名就可以了,发布的时候,自然就将postname传送给了服务器(Yo2已测),这也是非常实用的方法;

最后,也是个人最推荐的方法,就是采用Slug from title这个华丽溜溜的插件来处理了,而这个插件的作者又大胆的更踏进了一步,居然实现了:如果没有任何的postname信息的话,会自动将文章名(中文)去google translate去翻译一把,如果连网络都不通,就干脆换成拼音。——我再也没有别的追求了……下面是引自作者的原文:

插件的原模型是: slug from title, 请看这里: wp插件:slug from title离线发布不愁缩略名

最后形成的插件就是 wp-slug, 该插件实现如下功能:

  1. 如果在标题中设置有slug, 则选用标题中设置的slug作为缩略名, 标题设置的格式: title@@ Slug

  2. 如果标题未设置slug, 但在缩略名的栏目中有缩略名存在, 则选用slug栏目中的slug作为缩略名。

  3. 如果以上两处都未设置缩略名(slug), 则自动换取标题(title), 然后将标题翻译成英文(如果是非英文的标题), 翻译来源是http://translate.google.com, 然后将翻译得到的英文作为slug设置成缩略名。

  4. 如果因为某种原因, 比如网络问题、或者该中文字符无法翻译等等,就自动会把非英文字符(其实就是汉字)转换成拼音。 转换成拼音的不仅仅是标题, 有可能是已经设置的slug,如果已经设置的slug中含有中文字符也会翻译成拼音, 不过如果个Google的翻译中含有中文字符就会自动删除而不是翻译成拼音,因为我觉得这个就没有意思了!

幸运的是,这个插件在Yo2中已经导入,你需要做的只是在管理后台去启用它而已,wp slug in english or pinyin。

所以,幸亏得以有这些强者,我可以幸运的继续使用我的ScribeFire来发布日志了,而且还可以使用我自己能够看懂的缩略名做链接名了。

感谢再三。

01 Feb 2009 , 写于 上海