让你的blog实现tag功能(上)
最近这几天,忙着给自己的blog增加tag(标签)功能,tag是blog系统最基础的一个功能,主要是方便作者根据发布的文章内容设定关键字,通过这个关键字来实现相关文章的检索,再高级点的功能还能够实现tags cloud,通过这个cloud可以帮助用户更好的了解blog作者的关注点和热门的文章内容。
以本人使用的wordpress系统为例,在网上检索了大量文章,发现比较准确全面介绍如何实现tag功能的文章并不多,因此决定把自己设定tag功能的过程写出来,与大家分享,如果你用的也是wordpress,恰好还没有tag这个功能,那就仔细看下吧。
目前使用比较多的两个tag插件主要是:Ultimate Tag Warrior和Jerome’s Keywords Plugin,由于Ultimate Tag Warrior的开发作者网站已经上不去了,为了避免以后出问题不好解决,我首先选择了Jerome’s Keywords Plugin使用。
实现最基本的tags功能
一,先登陆Jerome的开发网站,下载最新的插件版本,解压缩后文件夹中包括两个文件:jeromes-keywords.php和一个license.txt。
二,将jeromes-keywords.php文件通过FTP上传到你的blog系统中的wp-content/plugins文件夹中,然后在WEB下进入wordpress的控制面版,进入插件管理的栏目,找到jeromes-keywords这个插件并激活它。
三,插件启动后,你可以发布新的blog文章,如果没有问题的话,在发布新的post的内容输入块下面将会出现一个“Keywords”的输入框,你可以输入你要设定的关键字,也就是tag了。注意,如果你选择的themes与插件有冲突的话,这个关键字输入框就出不来,那时候,可能你只能重新选择一款theme了。
四,解决了发布页设定tag的功能后,下面就是如何让这些设定的tag能够在你的blog首页上显示出来,其中可能包括两个地方:一个是你的blog首页,另外一个就是每篇blog的页面上,因此你需要修改wp-content/themes/yourtheme/的两个文件:index.php和single.php。
五,你可以直接在WEB下控制面板的theme编辑器中修改这两个文件,也可以通过线下修改FTP覆盖的方式来改,请确保这两个文件是可写入的。在这两个文件中各加入一句代码:Tags:< ?php the_post_keytags(); ? >(请去掉两个?前后的空格),注意加入的位置你可以任意选择,一般会放在post内容的末尾,但要保证在一个loop之间。
稍微解释下什么是一个loop,通过wordpress的官方网站,你可以看到一个loop就是:一段开始和结束代码之间,只要确保上面的代码在这个loop当中就可以了。
六,放入代码后,更新文件,刷新你的blog首页,然后点击一篇blog文章,你会发现你刚才设定的tag关键字已经全部显示出来了,通过点击tag的连接你可以看到所有设定同一个关键字的文章,这也就实现了最基本的tag功能。
实现tags cloud(Cosmos,云图)
Jerome’s Keywords Plugin还提供了更高级的tags Cosmos(云图)功能,也即实现了对tags的汇总,并通过字体大小的不同来显示这个tag的关注程度,个人认为,这个功能其实主要是对blog作者关注内容的一个体现,并且能够给你的阅读者提供参考。
先说说实现Cosmos的条件,只有你的主机能够支持mod_rewrite功能时,你才能够实现这个功能,我现在这个服务器就是不支持这个功能,以致于这么好的东西用不了(现在的cloud显示是好的,但link是错的)。首先查下你的blog根目录下是否有.htaccess这个文件,由于它是个隐藏文件,因此你要调整FTP显示状态为“可显示hidden文件”,如果没有这个文件,很可能你的服务器就不支持这个功能了。
一,先去下载作者提供的模板文件:cosmos.php,将这个文件上传到wp-content/themes/yourtheme/下,然后在WEB下控制面板里新建立一个page,注意在右边的模板template列表里选择“cosmos”就可以了,名字可以随便起一个,比如tags。
二,查看新建立的tags这个页面,你发现所有的tag及不同字体的呈现效果已经出来了,但是你会发现这些连接都是目录结构的,比如www.caozenghui.cn/tag/blog,而生成的tag都是以?和数字形成的,这个时候就需要上面提到的.htaccess这个文件了。
三,进入控制面板,在选项(options)里,你需要设定你的永久连接(permalinks),选择自定义格式:/blog/…,原来的文章?数字格式就会变成目录结构了,同时,下面会出现一段代码,你需要将这段代码拷贝到.htaccess文件中。如果你根目录下没有这个文件,可以本地建一个temp.htaccess,上传到blog的根目录下,然后把temp去掉就可以了。
四,检查新形成的目录结构是否可用,如果依然不可用,那说明你的主机真的不支持mod_rewrite,我的就是,真是不甘心啊。如果可以用了,那恭喜你,你的tags cosmos也实现了,另外你还可以把这个cloud放在其他页面位置上。


Ultimate Tag Warrior要修改数据库,就这个原因就不能使用他。
TO:williamlong,最近我打算尝试下UTW,没办法,JK在我这主机也是有点问题,不过相对而言,UTW的功能比JK要好一些。
Ultimate Tag Warrior只不过是被墙了而已.
功能虽多,但是带来的风险也大,比如WordPress升级会带来不可预知的麻烦,相比来说,不修改数据库的jeromes-keywords要更稳妥一些,我就是在用jeromes-keywords,感觉其功能也足够用了。
TO:williamlong,对,我也觉得是,Jk实现的tag功能基本已经足够了,相对来说,JK比UTW用起来更方便,谢谢你的提醒啊。多交流。
我现在用的也是jk这个插件,觉得已经足够了,云图确实不错,但是如果冒着升级数据库的问题,那我还是放弃了。
不错,还有(下)?在哪啊?
TO:Keenzy,下还没有写,希望能尽快有精力完善下一部分。谢谢关注。多交流。
昨天试用了这个插件,还是挺适合我的blog的(支持mod_rewrite)
再修改下就放到blog上了
TO:Keenzy,那恭喜你了,MD,我的不能使用这个命令,这个破服务器,我问过,人家说不支持!后来就没努力。
非常感谢你的文章,我也安装成功啦。
SHOW 一下我的博客里面的TAGS:
http://www.victor1.cn/
girtsdq dlhi vrxcptlyu nvxckihy xcnousew xfmagdso jqyluk
This is exactly what I expected to find out after reading the title 让你的blog实现tag功能(上) ⊙ 一言谈 | Telecom and Web2.0 Observe. Thanks for informative article
Thanks a bunch!
excellent!t
that\’s neat!o
We are killing the rainforest
Very effective. Thanx.
The school paddle is, is not an effective instrument to deal with bad students
cidtfmo cjswnvb sazynvmgj mtgef neopwf kfqbucz mdfuszj
I’ve basically been doing nothing worth mentioning. Today was a total loss. That’s how it is. Today was a loss. Basically nothing seems important, but eh. My mind is like an empty room. Basically nothing notable happening these days. My life’s been completely boring today.
I’d prefer reading in my native language, because my knowledge of your languange is no so well. But it was interesting! Look for some my links:
I’d prefer reading in my native language, because my knowledge of your languange is no so well. But it was interesting! Look for some my links:
In the US, the threat is that companies ,
囧,还以为会写Tag的实现方式呢,搞了半天是写如何在wp中配置插件。。。
非技术文章。标题党啊