这里有一点前言。我假设您对帖子类型或模板一无所知,因为我不熟悉下划线或Teamtreehouse开发轨道。如果不在评论中进一步询问,希望下面的内容有助于澄清问题。
WordPress以几个开头built-in post types 您已经熟悉的:
支柱(支柱类型段塞:page
)页面(post type slug:post
)他们使用their own templates, 通常情况下,它们遵循以下原则:
发布帖子home.php
或index.php
是您的存档页还是帖子列表archive.php
是其他一切(档案、类别、标签)的归宿single.php
是您的单一内容的未来所在
页面front-page.php
将单个页面内容指定为主页page.php
用于所有页面的默认模板page-{$slug}.php
用于通过其slug将特定页面作为目标您可以将上述内容用于
normal loops 要显示您的内容,您不一定需要使用以下内容
get_template_part()
这就是WordPress版本的
PHP include()
.
现在,你想用公文包做什么,你可能想建立自己的公文包Custom Post Type. 这些自定义帖子类型使用上述模板的变体:
公文包(您的自定义帖子类型)-portfolio
将是鼻涕虫
archive-{post-type-slug}.php
是你的投资组合帖子列表的位置archive.php
如果WordPress找不到上述模板,则将是回退index.php
如果没有archive.php
然后WordPress将回退到此模板进行显示
single-{post-type-slug}.php
将是你的一个完整的投资组合职位single.php
如果找不到上述模板,将是回退
您将关闭
{post-type-slug}
在上面的模板中使用您的post type slug,因此最终您将拥有:
archive-portfolio.php
和single-portfolio.php
现在,对于文章类型的静态页面,您有大量的选项,其中没有一个是对的或错的。
1) 你可以为它创建一个实际的页面,调用它page-portfolio.php
但是你需要单独运行WP_Query()
因为WordPress不知道如何关联你的投资组合帖子page
与您一起发布类型portfolio
岗位类型。与全球Page Template 但你不需要追踪身份证或鼻涕虫。
2) 您可以允许用户为您的帖子类型分配页面。类似于转到管理面板Settings -> Reading
以及指定首页和博客页。您可以将页面ID保存到数据库中archive-{post-type}.php
获取该页面的内容以显示它。
我相信还有其他方法,每个人都有自己喜欢的方法。
我并不反对使用上述使用模板部分分隔内容的方法,但我觉得对于初学者来说,简化的WordPress模板方法更容易掌握,这太复杂了。