LOST in WP Template Hireachy

时间:2014-10-23 作者:Suffii

我正在尝试创建一个自定义主题,该主题应该首先根据分类法和下一页列表列出和分析自定义帖子类型,并根据从第一页链接的分类法术语显示它们。所以我得到的是enter image description here

基于我所拥有的,我决定使用WordPress之类的工具创建5页自定义模板

<?php
/*
Template Name: Movies
*/ 
然后我把这些页面移到导航栏。对于每个页面,我通过Wp查询硬编码了一个自定义循环,以获得页面分类下的自定义帖子类型列表。例如,对于Movie页面,我编写了一个查询来列出movieTax下的所有moviecpt,对于侧栏,我编写了一个查询来列出该分类法的所有术语。这显然不是WP中的标准方法,现在我很难将每个术语的结果链接到下一页,再次例如,在下面的图像结构中,如果用户单击“B”,我不知道如何显示结果。

enter image description here

我研究了很多代码,并在网上看到了一些关于WP模板层次结构的教程,但我不知道如何在这样的情况下使用它们!你能花点时间让我知道我需要什么样的标准层次结构来动态呈现这样的模板吗?

我真的很感谢你提前抽出时间

1 个回复
最合适的回答,由SO网友:Pieter Goosen 整理而成

这个template hierarchy 不提供存档索引页。这是一个通过trac票证提出的问题,但由于各方面的主题结构不同,这个想法被废弃了,永远不会实施

因此,以下内容将永远不会以本机方式存在

列出给定分类法中所有帖子的页面

列出所有自定义帖子类型的帖子的页面

显示属于分类法的术语索引的页面(类别、标记和作者页面也是如此)

层次结构中存在以下do

显示自定义分类法中给定术语的所有帖子的页面(请参见模板层次结构中的分类法页面)

显示给定自定义帖子类型中所有帖子的页面(请参阅模板层次结构中的存档页面)

综上所述,您可以重新评估您的结构。您的条款可以显示在taxonomy.php 样板taxonomy-{$taxonomy}.php 模板或taxonomy-{$taxonomy}-{$term}.php 样板为此,只需复制索引即可。php并相应重命名。要链接到单独的术语页面,请使用get_term_link 链接到学期页面。

您需要创建一个自定义页面。php模板显示给定分类法下的所有术语。

出于兴趣的考虑,我不久前发布了一篇关于自定义帖子类型和类别的动态页面模板的帖子。如何工作,您只有一个模板分别。在后端创建新页面时,可以选择需要在特定页面上分别显示的自定义帖子类型或类别。因此,您将只有一个页面模板,而不是四个或五个页面模板。这两个模板中的任何一个都可以根据您对分类法的喜好进行修改。这是两个帖子

EDIT

来自评论

所以在我的例子中,我将有一个叫做电影页面的页面。php和分类法。php和分类法movieTax。php?正当最后一个问题?我是否需要具有相同的存档结构。还有php?

看看你的结构,我会说是的。提示一下,如果您命名页面模板,请调用它page-movie.php 而不是相反。正如我在之前的评论中所述

只有当你每个学期都需要一个完全不同的设置时,我认为你不会这么做。单一分类法。如果您需要对所有四种分类法中的所有术语使用相同的布局,那么php将非常有效。但是,如果需要每个分类法具有不同的布局,可以创建四种不同的分类法-{$taxonomy}。php模板。这完全取决于你和你的布局。如果您需要在分类法或给定分类法中的术语之间使用不同的布局,则层次结构仅提供

但归档页面会有所不同。存档页用于显示自定义帖子类型的帖子。此归档页面将列出您的cpt中的所有帖子,无论分类法或术语如何。除了默认存档之外,这里只有一个选项。php,也就是archive-{$post_type}.php

但再说一次,你don\'t 需要创建这些自定义页面。一archive.php 和ataxonomy.php 如果您不需要任何花哨的布局差异,或者每个自定义帖子类型、分类法或术语都不需要非常具体的需求,那就足够了。

结束

相关推荐