在開始制作WordPress主題之前,首先得了解WordPress主題到底由哪些文件構成,你得清楚WordPress程序是怎樣與主題文件連接的。
以下是WordPress默認主題default文件夾下的所有模板文件。看了下圖,可能你還摸不著頭腦,到底這些文件是干什么的。WordPress的主題是用PHP編寫的,而不是純HTML + CSS,所以模板文件的后綴名是.php,如果你想精通WordPress的主題制作,完美控制你的博客,最好要熟悉PHP編程。要是不會PHP編程怎么辦?就做不了WordPress主題了嗎?那也不是,至少看完本系列教程,你也能夠掌握基本的WordPress主題制作方法。
下面是WordPress主題文件層次結構,它會告訴你:當WordPress顯示特定的頁面類型時,會使用哪個模板文件呢?只有了解了以下主題層次結構,你才能知道你的WordPress主題到底需要寫哪些文件。
怎么看下面的文件層次結構?
以主頁為例,下面有2個文件home.php和index.php,WordPress程序會從你的主題文件夾中依次查找這兩個文件:
如果找到home.php,則使用home.php作為博客首頁模板,即使你的主題文件夾中有index.php;
如果home.php未找到,則使用index.php作為首頁模板;
如果home.php和index.php都找不到,你的主題將不會被WordPress識別,等于廢物。
主頁
home.php
index.php
文章頁:
single-{post_type}.php - 如果文章類型是videos(即視頻),WordPress就會去查找single-videos.php(WordPress 3.0及以上版本支持)
single.php
index.php
頁面
自定義模板 - 在WordPress后臺創建頁面的地方,右側邊欄可以選擇頁面的自定義模板
page-{slug}.php - 如果頁面的縮略名是news,WordPress將會查找 page-news.php(WordPress 2.9及以上版本支持)
page-{id}.php - 如果頁面ID是6,WordPress將會查找page-6.php
page.php
index.php
分類
category-{slug}.php - 如果分類的縮略名為news,WordPress將會查找category-news.php(WordPress 2.9及以上版本支持)
category-{id}.php -如果分類ID為6,WordPress將會查找category-6.php
category.php
archive.php
index.php
標簽
tag-{slug}.php - 如果標簽縮略名為sometag,WordPress將會查找tag-sometag.php
tag-{id}.php - 如果標簽ID為6,WordPress將會查找tag-6.php(WordPress 2.9及以上版本支持)
tag.php
archive.php
index.php
作者
author-{nicename}.php - 如果作者的昵稱為rami,WordPress將會查找author-rami.php(WordPress 3.0及以上版本支持)
author-{id}.php - 如果作者ID為6,WordPress將會查找author-6.php(WordPress 3.0及以上版本支持)
author.php
archive.php
index.php
日期頁面
date.php
archive.php
index.php
搜索結果
search.php
index.php
404 (未找到)頁面
404.php
index.php
附件頁面
MIME_type.php - 可以是任何MIME類型 (image.php, video.php, audio.php, application.php 或者其他).
attachment.php
single.php
index.php
WordPress主題制作全過程完整列表:
WordPress主題制作全過程(一):基礎準備
WordPress主題制作全過程(二):主題文件構成
WordPress主題制作全過程(三):HTML靜態模板制作
WordPress主題制作全過程(四):小試牛刀
WordPress主題制作全過程(五):制作header.php
WordPress主題制作全過程(六):制作footer.php
WordPress主題制作全過程(七):制作sidebar.php
WordPress主題制作全過程(八):制作index.php
WordPress主題制作全過程(九):制作single.php
WordPress主題制作全過程(十):制作comments.php
WordPress主題制作全過程(十一):制作page.php