虽然现在免费的Wordpress主题满天飞,但做为一个Geek你有没有考虑过写一个属于自己的Wordpress主题呢。这篇文章就教你如何从最基础开始做一个Wordpress主题。

主题的文件结构:

写之前首先要了解一下Wordpress主题的结构。

WordPress主题放在wp-content/themes/下,做为一个独立的文件夹存在。文件夹的名字随意,但不要使用纯数字,否则会导致主题无法在主题列表中正常显示。主题文件夹中包含该主题需要的所有样式文件、模板文件、函数文件、JavaScript脚本 文件、静态文件等。

一个最小的主题通常由三类文件组成:

样式表文件 style.css

函数文件functions.php(可选)

模板文件

注意,这些文件的名称是固定的,不能随意更改。

下面我们就来分别看一看每个文件有什么作用。

样式文件:

style.css是一个主题的必选文件,因为其中包含了对这个主题的描述信息。一个style.css的头部信息如下:/* Theme Name: 主题名称(必选)

Theme URI: 主题的地址,可选,格式为一个URL,如http://wordpress.org/

Description: 对主题的描述,会显示在主题列表中。

Author: 作者

Version: 版本,如1.0 Tags: 给主题加的一些标签,可选,一般是为了让用户更方便搜索到这个主题。

*/

需要注意的是,每个主题都应该有一个自己的主题名称(Theme Name),以便于在主题列表中可以区分。

函数文件:

除非你建立一个纯静态的主题,否则你一定会调用到Wordpress的API。这些主题所要用到的函数就写在functions.php文件中。你可以以Wordpress自带主题中的functions文件做为参考。

模板文件:

模板文件不是一个文件,而是一类php文件。它们决定了你每个页面的最终显示效果。模板文件遵循一定的命名规则,下面是每个模板的名称和用途。

模板文件说明:

index.php

主模板。如果你的主题使用自己的模板,index.php 是必须要有的。

comments.php

评论模板.

front-page.php

首页模板,仅用于开启静态首页时。

home.php

主页模板,默认的首页。如果你开启了静态首页这是展现最新的文章的模板页面。

single.php

单独页面模板。显示单独的一篇文章时被调用。对于这个以及其他的请求模板,如果模板不存在会使用 index.php。

single-.php

自定义单独页面模板。例如,single-books.php 展示自定义文章类型为books的文章. 如果文章类型未被设置则使用index.php。

page.php

页面模板,独立页面调用。

category.php

分类模板,分类页面调用。

tag.php

标签模板,标签页面调用。

taxonomy.php

术语模板,请求自定义分类法的术语时使用。

author.php

作者模板,作者页面调用。

date.php

日期/时间模板,按时间查询时使用的模板。

archive.php

存档模板,查询分类,作者或日期时使用的模板。需要注意的是,该模板将会分别被category.php, author.php, date.php所覆盖(如果存在的话)。

search.php

搜索结果模板,显示搜索结果时使用的模板。

attachment.php

附件模板,查看单个附件时使用的模板。

image.php

图片附件模板,当在wordpress中查看单个图片时将调用此模板,如果不存在此模板,则调用attachment.php 模板。

404.php

404 错误页面模板,当WordPress无法查找到匹配查询的日志或页面时,使用404.php文件。

没有特别的数量要求,你甚至可以仅仅使用一个文件index.php作为模板文件,所有 页面都会使用这个模板,多数情况下,你会有多个模板来显示不同的页面。具体模板的调用顺序可以参考下图:

一个最简单的主题:

知道了上面这些之后,我们来看一个最简单主题例子。首先,这个主题包含下面几个文件:

style.css

index.php

single.php

header.php

sidebar.php

footer.php

style.css的内容上面已经提及,你只需要补充自己需要的css就可以了。

header.php, sidebar.php, footer.php分类是页面的顶部、边栏、尾部。文章采用single.php作用模板,其它页面(如主页)会采用index.php做模板。

index.php的内容为:<?php get_header(); ?>

文章页面模板single.php为:<?php get_header(); ?>

<?php the_title(); ?>

这样,我们一个最简单的模板就完成了。剩下的就是你自己根据你的需要为其添加样式和内容了。另外在模板中所有你可能用到的Wordpress函数在这里都可以找到:Wordpress Function Reference。

更多wordpress相关技术文章,请访问wordpress教程栏目进行学习!

php WordPress开发,wordpress主题如何开发相关推荐

  1. 这7个在线工具,帮助您快速开发WordPress主题

    由于WordPress遵从GPL协议,这个协议规定WordPress可以免费用于商业用途.这样做一个网站的成本就比较低.相对应的开发WordPress主题的需求就多起来了.结合笔者多年开发WordPr ...

  2. 大牛们是如何开发 WordPress 主题的?

    自己算是写过一个主题,目前也在用( 这里 -> http://udonmai.com/ ),所以多少想说两句. 当初走上web开发的路之后最想干的事情就是写个自己的WP主题...所以网上搜罗了很 ...

  3. wordpress主题是php开发的吗,如何建立wordpress主题的开发环境

    摘要:为什么要建立开发环境? 在开发主题时,最好在与最终托管WordPress安装的生产服务器相同的环境中执行此操作. 您的开... 为什么要建立开发环境? 在开发主题时,最好在与最终托管WordPr ...

  4. wordpress博客主题,wp博客主题开发,wordpress主题模板

    wordpress博客主题,是wordpress网站其中最具特色的就是它的主题系统.许多站长使用Wordpress搭建个人博客,但是大多数人都不会选择Wordpress默认主题,因为不管是功能还是外观 ...

  5. wordpress是用php几开发的,php-WordPress多个开发人员设置

    是否可以让一个以上的人通过测试站点来开发Wordpress应用程序,这是一个很好的选择. 我遇到的最大障碍是在本地开发和集成到测试环境时的路径问题. 是否有人拥有维护开发人员环境,保持工作内容和链接的 ...

  6. 精通WordPress设计与开发:第3章 本地开发WordPress

    本章内容: ➤本地开发 ➤搭建一个本地开发环境 ➤配置本地开发环境 ➤发布本地项目 现在你已经知道如何使用WordPress以及基本的布局,让我们看看如何开始使用WordPress做一些事情,而不仅仅 ...

  7. WordPress插件开发教程1:开发第一个WordPress插件

    一.创建一个插件 第一步:在 wp-content \ plugins 目录新建一个目录,随便起个名字,比如:my-first-plugin.         第二步:进入 my-first-plug ...

  8. WordPress版微信小程序开发系列(二):安装使用问答

    自WordPress版微信小程序发布开源以来,受关注的程度超过我原来的想象.这套程序主要面对的用户是wordpress网站的站长,如果wordpress站想在微信的生态圈得到推广,小程序成为一种重要的 ...

  9. 奇遇网:WordPress版微信小程序开发:安装使用问题

    原文:WordPress版微信小程序开发:安装使用问题 自WordPress版微信小程序发布开源以来,受关注的程度超过我原来的想象.这套程序主要面对的用户是wordpress网站的站长,如果wordp ...

最新文章

  1. php某列为键数组为值,PHP 将二维数组中某列值作为数组的键名 -- 超实用
  2. 数码管显示实验一 编写程序让8只数码管同时显示零
  3. [ES6] 细化ES6之 -- ECMA6是什么
  4. Python稳基修炼的经典案例4(计算机二级、初学者必须掌握的例题)
  5. 图形化串口助手Serialplot使用小结
  6. 国企程序员可以干多久
  7. 【BZOJ3162】独钓寒江雪(树哈希,动态规划)
  8. 程序员快收藏:国内一二线城市的互联网公司汇总
  9. 1000道最新大厂高频Java面试题,覆盖25个技术栈(多线程、JVM、高并发、spring、微服务、kafka,redis、分布式)从底层原理到架构
  10. 网名接龙--之追求完美
  11. 计算机网络---局域网与广域网
  12. 南师大计算机学院博雅课的要求,南师大博雅课程
  13. 产品经理也能动手实践的AI(四)- 多标签识别,图像分割
  14. Head First HTML与CSS、XHTML (中文版).(Elisabeth Freeman) PDF扫描版​
  15. 2022年全球市场印刷电路板和印刷电路板总体规模、主要生产商、主要地区、产品和应用细分研究报告
  16. 有效需求分析培训梳理(一)
  17. C++ QT结合FFmpeg实战开发视频播放器-08播放器项目的整体UI架构
  18. 联想台式计算机的设备序列号,WMI获取硬件信息封装函数方法(联想台式机出厂编号 CPUID BIOS序列号 硬盘信息 显卡信息 MAC地址)...
  19. 蓝桥杯EDA赛前总结
  20. 边缘锐化和对比度增强的有效方法

热门文章

  1. 【开源计划预告】医学图像非刚性配准实践项目开源计划(5-5更新)
  2. 趣味Python——谁做的好事?
  3. PMP考试一定要报培训机构吗?
  4. 使用java反编译查看java生成的exe文件的源码
  5. 大数据技术与实践学习笔记(2 of 3,from hitwh)
  6. 零基础学C/C++165——输出素数
  7. linux版本wannacry,WannaCry 勒索病毒也能感染 Linux
  8. JavaBean(知识总结)
  9. Symbian 编程(二)——运行你的第一个sis程序
  10. 直播:「青葱创业计划」发布会