解决方案
WordPress 3.1 Taxonomy Feeds Plugin (Must Use)
将必须使用的插件放在您的网站上,并请求:
http://blog.example.com/feed/?taxonomy=taxonomy-name
正如你所要求的。
详细信息
Wordpress提供了使用多种配置请求提要的功能。
Finding Your Feed URL (Wordpress Codex) 显示可能的情况。在标准提要(帖子)旁边,您可以有以下内容:
评论-http://example.com/?feed=commentsrss2
类别-http://example.com/?cat=42&feed=rss2
标签-http://example.com/?tag=tagname&feed=rss2
作者-http://example.com/author/authorname/feed/
搜索-http://example.com/?s=searchterm&feed=rss2
(注意:RSS2是Wordpress的默认提要格式)
如您所见,没有提供关于查询分类法帖子的提要的示例URL。
一般来说,Feed就像任何其他博客帖子或评论列表一样:一个WP\\u查询,然后在Feed模板中运行循环。
WP\\u Query支持taxonomy
默认情况下为request参数。该请求参数为sort of documented in codex, 该部分有两个问题:1。)它是分类法(不是税),second 3.1还没有发布,所以它还没有被弃用。我链接该文档的目的是显示它的值与分类法slug进行了比较。
因此,要想知道WordPress是否可以轻松地完成您想要做的事情,您需要知道提要在请求某个类别时是否已经支持分类法。我已经这样做了,事实并非如此。使用了一个额外的请求查询变量:category_name
.
因此,目前唯一有趣的部分是,我们可以额外使用taxonomy
请求参数,当wordpress查找feeds数据库数据时,它处于某种旧式类别查询模式,而不是分类查询模式。这有点遗憾,因为您正在寻找分类法。
暂时深呼吸,因为你需要。Wordpress的问题是,您现在开始接触到软件最复杂的内部结构。包中有一些非常复杂的函数,要理解这些函数就像调试代码:您需要一步一步地完成。
在这样做的同时,您可能很幸运地找到了一个过滤器或挂钩,您可以利用它在运行中操纵值和回调,使事情按您的意愿进行。但问题是,修补得越多,损坏东西的风险就越高。
因此,艺术就是找到一个地方来进行改变,这是一个侵入性较小的位置。
添加对分类法的支持
如上所述,需要在WP\\U查询中直接添加对分类法的支持。这可以通过挂接该函数并在执行此操作时更改值来实现。
但是可以查询分类法吗?关于这一点,我找不到太多3.1之前的信息。看起来,即使WordPress 3.0支持自定义分类法,也无法通过请求参数查询特定分类法中的帖子。
即使在我的3.1测试床中,我也无法将请求参数映射到分类查询。因此,即使使用3.1,这也可能不容易做到。
到目前为止,我能看到的最好的解决方案是挂接到WP\\u查询并使用WordPress 3.1 based custom taxonomy query, 以下是一些模型代码:
$myquery[\'tax_query\'] = array(
array(
\'taxonomy\' => \'category\',
),
);
query_posts($myquery);
我觉得这可能行不通,因为我们只查询分类法。让我们详细检查一下。
WP 3.1自定义分类查询仅用于分类pre_get_posts
并注入了上面显示的WordPress 3.1自定义分类查询。作为分类法,我使用了一种默认分类法:category
(你可以find all default taxonomies here). 它抛出了很多PHP警告,这表明该功能在某种程度上是脆弱的。因此,请注意,不要指望事情会开箱即用。
不管怎样,我测试了这一点,为了快速完成一个长话短说的结尾,我找到了一个解决方案,只需获取所有术语,然后将它们添加到查询中。这是我迄今为止使用的mu插件:(贴在上面),为我做这项工作。