四五中文网 www.45zw.cc,最快更新左岸读书最新章节!
wordpress自动生成的rssfeed是默认输出每个目录分类下的每一篇日志的,但有时,我们想唠叨下又不想打扰到关注有意义信息的订阅者,怎么办呢?只需要把唠叨的日志归类到一个分类,然后在feed里让该分类下日志不显示就ok咯!
如何实现呢?方法有二:
通过url除掉分类下日志的feed显示;
通过一个小函数除掉分类下日志的feed显示。
两种方法都很简单,首先要知道分类的id。wp2。5版以前,在控制面板“管理”->“分类”下面即可见分类id;在wp2。5之后,这些分类id不直接显示出来了,但可以通过分类链接来判断:控制面板“管理”->“分类”下,各分类对应的链接即包含分类id,如下图所示:
所以,如果你想把id为20的分类在feed中除掉,就在feed地址后面加上”?cat=-20″(不要引号)就好了。
例如:
正常feed:kriesi。at/feed
调整后的feed:kriesi。at/feed?cat=-20
要是想灭掉更多目录:kriesi。at/feed?cat=-20&cat=-21&cat=-22
可惜,这种feed地址挺不好看的,所以我们可以借助feedburner之类的烧制服务来美化。但要注意的是,feedburner所接纳的句法有点小差异,我们不能用“与”符号“&”需要改用逗号:
kriesi。at/feed?cat=-20,-21,-22
方法一介绍完咯,下面介绍方法二。不想用如上方法的话,可以看看用小函数滴方法。只要在functions。php里加入如下code就好:
functionmycatexclude($query){if($query->isfeed){$query->set("cat","-20,-21,-22");}return$query;}addfilter("pregetposts","mycatexclude");
这样就可以在不调整feedurl的情况下,在feed里除去选定分类下的日志了!真是简单整洁的方法,只是没法输出多个feed,没方法一灵活。
当然,我们还可以用插件的方法:
推荐使用插件decat。decat是由florianholzhauer编写的,可以在rss/atomfeeds中隐藏某个分类下的日志,使用很简单,上传->激活->选择隐藏分类即可。
提示:由于语言问题,建议将隐藏分类起个英文名,suchas:hide,以利于选择。
下载:fholzhauer。de/b/wp-content/decat。tar。bz2