Display taxonomy posts

时间:2015-07-15 作者:Packy

这似乎非常基本,但在任何地方都找不到明确的答案。我所要寻找的就是在分类法中显示帖子的循环。

假设我有一个名为custom_category 在这其中,我有几个类别,比如美国和加拿大,然后爱达荷州和华盛顿是我们的孩子。所以url看起来像http://example.com/custom_category/us/idaho/. 我所要做的就是将正确的PHP添加到taxonomy.php 页面显示每个类别中的帖子。因此,只有当你在爱达荷州的网页上时,你才能看到贴在上面的帖子,而当你在华盛顿的网页上时,你才能看到贴在上面的帖子。

我不想为每个类别添加特定查询,因为如果我添加新状态,我不想添加新的自定义模板。

1 个回复
SO网友:Pieter Goosen

如果您的URL结构有效且正确,那么您所需要的就是默认循环。

主查询在每个页面请求上运行,参数传递给WP_Query是,主查询还使用WP_Query)由该特定页面的URL和重写规则确定。如果您的URL结构是有效的结构,并且与分类术语页面的真实页面请求相匹配,那么主查询返回的帖子应该匹配,并且所有帖子都在通过URL请求的特定术语中。

我已经写了一篇关于何时使用自定义查询的帖子,如果没有,你可以去读那篇帖子here. 了解这一点非常重要,我对此非常强调,永远不要使用自定义查询来代替主页上的主查询和任何类型的存档页。使用自定义查询代替主查询不仅效率低下,而且会破坏页面功能。

总而言之,分类法模板中需要的唯一代码如下

if ( have_posts() ) {
    while ( have_posts() ) {
    the_post();

        // Your template tags and markup like

        the_title();

    }
}

结束

相关推荐

Display specific taxonomy

我有一个自定义的帖子类型位置我有一个自定义的分类地标在地标下,我有一些页面/帖子上的建筑地标列表,我希望能够从分类列表中插入特定的地标,而不是显示整个列表。我想我可以使用自定义字段,但我更希望它像分类法一样工作,在用户单击时,它将显示与该地标相关的所有帖子。搜索之后,似乎不可能显示单个分类术语?这是我用来显示分类列表的代码段。function list_terms_custom_taxonomy( $atts) { extract( shortcode_atts( array( \