Archive

Posts Tagged ‘WP-Slug’

自动转换post slug为英文或拼音的wordpress插件(slug from title离线发布不愁缩略名)

February 1st, 2008

自动转换post slug为英文或拼音的插件

自动生成英文日志缩略名或拼音缩略名
文章缩略名自动生成
slug from title离线发布不愁缩略名

插件信息

* 插件名称:WP-Slug
* 适用平台:2.0+
* 功能简介:WP-slug用来自动生成英文日志缩略名或拼音缩略名。翻译源自Google的翻译功能,如果你手动添加SLUG,那就按你添加的SLUG为准。如果未添加,刚自动生成英文缩略名,当不能翻译的情况下,就生成拼音缩略名。
挺简单的一个插件,但非常方便,简化了发布日志时的工作量。
比如你现在看到的这篇日志缩略名,就是用这个插件自动生成的。

 用法:

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

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

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

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

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

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

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

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

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

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

大致的说明就是以上几点, 这个是我编程的流程图, 有兴趣的可以看看。

WP-Slug流程图

插件大概就这些, 现在的不足是没有判断网络不通之后超时的情况, 我对网络编程不知道, 不知道如何才能比较好的判断。 有达人不妨相告, 鄙人不胜感激!

插件的安装很简单, 直接上传之后激活就可以了, 如果你以前安装有slug from title 插件的话, 需要先禁用slug from title插件, 否则会产生错误!

********************

插件简介: slug from title 插件顾名思义就是从title(标题)中截获某些字符形成缩略名, 所以你需要把缩略名写在title中; 不过你放心, 你的title是不会有问题, 还是会按照你原来的标题运作的, 比如我这篇文章, 你看到的标题是“WP插件:slug from title 离线发布不愁缩略名”, 但其实我在离线编辑器中的标题不是这样的, 在离线编辑器中的标题样式是“wp插件:slug from title离线发布不愁缩略名@@slug from title introduction wordpress plugins”。 然后你看看, 我的文章的链接是不是@@后面的那部分? 对了, @@后面的就是缩略名(slug)了。

插件安装: slug from title 插件的安装非常简单, 只要将 slug_from_tiltle.php 上传到wp的plugins目录下, 然后进入到wp的后台管理中, 在plugins中启用该插件就可以了。

插件使用: slug from title 插件的使用只需要你在写文章的时候在标题中写入缩略名(slug)就可以了, 文章标题和文章缩略名之间用两个@@隔开(当然, 你可以自己修改分隔的字符, 在slug_from_title.php中查找@@, 替换成你自己想要的分隔符就可以了), 文章标题在前, 缩略名在后就对了。 就如这样: 文章标题@@文章缩略名

插件原理: 就是利用了wp强大的add_filter()函数。 在我们平常不设置缩略名的情况下, wordpress给出的缩略名也是从title(文章标题)中santitle过来的, 这次我们也一样利用title来完成我们的缩略名设置。

插件下载点这里下载。(注意:是zip的格式, 需要自己解压缩)

********************

还看到一个可以使得离线发布使用slug的插件叫cos_tools,  cos_tools是采用直接写数据库的方式, 而且只对离线发布有效; 这个 slug from title 就又秉承了修改post.php的风格, 对所有发布日志的方式都有效。

wordpress支持 , , , , , , , , ,