wordpress模板层级结构说明


wordpress主题开发一般需要的模板都比较固定,比如主页(index.php,home.php),404页面(404.php),搜索页面(search.php)等,下面是来自wordpress官网的模板层级图表:
Template_Hierarchy
图表中包含了模板文件,包含相关模板标签与CSS样式.

wordpress模板层级说明

首页模板
首页模板一般用于展示最新文章列表等。
home.php
index.php
前台页面展示(Front Page display)
模板文件用于呈现站点首页,首页是否显示博客的一个静态页面。前台页面的模板优先于index.php与home.php模板。
front-page.php – 用于你最新的文章或者一个静态页面设置,设置方法:进入后台=》设置=》阅读
文章详情页(Single Post display)

文章详情页设置

single-{post_type}.php – post_type可以设置不同的文章类型。
single.php
index.php

页面展示(Page display)

页面模板文件可以展示一个自定义的独立页面

page-{slug}.php – 设置不同的页面
page-{id}.php – 如果文章id为6, WordPress将读取页面模板page-6.php
page.php
index.php

分类页面展示(Category display)

分类模板页面用于读取不同分类的文章

category-{slug}.php – 如果分类别名为news, wordpress将使用模板category-news.php
category-{id}.php – 如果分类的ID为6, WordPress将使用模板category-6.php
category.php
archive.php
index.php

标签页面展示(Tag display)

标签页面用于展示标签的文章列表

tag-{slug}.php -如果别名为sometag, WordPress会使用模板tag-sometag.php
tag-{id}.php – 如果标签的ID为 6, WordPress使用的模板将是 tag-6.php
tag.php
archive.php
index.php

自定义分类展示(Custom Taxonomies display)

自定义类型文件模板用于不同类型的的文章展示,比如日期规定页面,作者归档页面等。

taxonomy-{taxonomy}-{term}.php – 如果分类的类型是是sometax, 而且该类型下的分类名为term,wordpress将会调用模板taxonomy-sometax-someterm.php.
taxonomy-{taxonomy}.php -如果分类的类型是是sometax, WordPress将调用模板taxonomy-sometax.php
taxonomy.php
archive.php
index.php

自定义文章类型展示(Custom Post Types display)
自定义文章页面是根据不同类型的文章如果图片,视频,音乐等读取不同的模板。
archive-{post_type}.php – 如果文章类型为product, WordPress将调用模板archive-product.php.
archive.php
index.php

作者页面展示(Author display)

作者页面用于展示指定作者的文章列表

author-{nicename}.php -如果作者的名字为rami, WordPress将调用模板author-rami.php.
author-{id}.php – 如果作者的ID为6, WordPress将调用author-6.php.
author.php
archive.php
index.php

日期页面展示(Date display)

日期页面模板用于按日期的文章归的模板

date.php
archive.php
index.php
搜索结果页面(Search Result display)

搜索结果页面用于展示系统的搜索结果

search.php
index.php

404 (Not Found) 页面

404页面用于展示系统返回404错误的展示页面

404.php
index.php

附件页面展示(Attachment display)

附件页面用于展示不同附件的列表页

MIME_type.php – 不同类型的附件模板(image.php, video.php, application.php). For text/plain, in order:
text.php
plain.php
text_plain.php
attachment.php
single-attachment.php
single.php
index.php
模板筛选
wordpress中你可以通过函数get_query_template()来筛选不同的模板 模板格式为:”{$type}_template.php” ,完整列表如下:

  • index_template
  • 404_template
  • archive_template
  • author_template
  • category_template
  • tag_template
  • taxonomy_template
  • date_template
  • home_template
  • front_page_template
  • page_template
  • paged_template
  • search_template
  • single_template
  • text_template, plain_template, text_plain_template (all mime types)
  • attachment_template
  • comments_popup