在讲解WordPress主题文件之前,先来分析下WordPress官方源文件,我们下载好的WordPress程序一般包括以下这些文件
以下是WordPress默认主题default文件夹下的所有模板文件。看了下图,可能你还摸不着头脑,到底这些文件是干什么的。WordPress的主题是用PHP编写的,而不是纯HTML + CSS,所以模板文件的后缀名是.php,如果你想精通WordPress的主题制作,完美控制你的博客,最好要熟悉PHP编程。
- index.php
- license.txt
- readme.html
- wp-activate.php
- wp-blog-header.php
- wp-comments-post.php
- wp-config.php
- wp-config-sample.php
- wp-cron.php
- wp-links-opml.php
- wp-load.php
- wp-login.php
- wp-mail.php
- wp-settings.php
- wp-signup.php
- wp-trackback.php
- xmlrpc.php
wp-admin:后台管理需要的类和文件
wp-includes:WP强大的类库及核心函数定义
wp-content:
- languages 多语言包,使用Poedit编辑和创建语言包
- plugins 插件安装目录
- themes 主题安装目录
- upgrade 文件上传目录
开发主题的话我们只用到wp-content目录下的themes目录,这里面只是简单介绍一下WordPress的官方源文件,其实我们在开发主题的过程中很少用到其他WordPress的源文件。
开始制作WordPress主题之前,我们先了解下WordPress的主题文件构成,一般来讲一个WordPress主题至少包括index.php和style.css这两个文件。
index.php //主模板文件,所有主题都需要它 style.css //样式表文件,不可缺少,并包含主题的信息标题 rtl.css //如果网站语言的文本方向是从右到左,则会自动包含从右到左的样式表 comments.php //评论模板。 page.php //访问者请求单个页面时使用页面模板,这些页面是内置模板。 home.php //默认情况下,主页模板是首页。如果您没有将WordPress设置为使用静态首页,则此模板用于显示最新帖子。 header.php //头部模板文件通常包含您网站的文档类型,元信息,样式表和脚本的链接以及其他数据。 footer.php //公共底部模板 sidebar.php //侧边栏模板 single.php中 //日志模板。 archive.php //归档模板,如果分类标签页没有模板的话,会使用这个模板 category.php //分类页模板 tag.php //标签页模板 search.php中 //搜索结果模板用于显示访问者的搜索结果。 404.php //当WordPress无法找到与访问者请求匹配的帖子,页面或其他内容时,将使用404模板 functions.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.php
- index.php
- MIME_type.php – 可以是任何MIME类型 (image.php, video.php, audio.php, application.php 或者其他).
- attachment.php
- single.php
- index.php
除基本index.php模板文件外,你可以选择是否添加要实现特定模板的文件。如果WordPress找不到与特定模板的文件,它将跳转到层次结构中的下一个文件。如果WordPress找不到任何匹配的模板文件,将使用index.php文件。
以主页为例,home.php和index.php都可以表示主页,WordPress程序会从你的主题文件中依次查找这两个文件,如果找到home.php,则使用home.php作为博客首页模板,即使你的主题文件中有index.php;如果home.php未找到,则使用index.php作为首页模板;如果home.php和index.php都找不到,你的主题将不会被WordPress识别,也就没法运行。
上面虽然讲了这么多文件,但并不是每个文件都需要,用到什么模板创建相应的文件就行。对于复杂一点的主题,通常会有很多php函数,为了有清晰的层次结构,一般会将代码分装在其它的php文件中,可以在functions.php使用require_once()或incluede()等函数引入文件。
原文链接:https://www.coonote.com/wordpress/wordpress-theme-make-files.html