Products
GG网络技术分享 2025-03-18 16:13 0
wordpress主题制作,WordPress主题由一系列文件和 CSS 样式表构成,构成了一个美丽的WordPress网站。每个主题都是不同的,这样WordPress用户就可以随时更改WordPress网站的外观。站长也许想为自己开发 WordPress主题,或者制作公开发行的的主题。创建自己独特的 WordPress 主题外观。利用模板,模板标签,和WordPress 循环来产生不同的效果。为了产生不同的效果,比如在pages页面和搜索结果页面产生个性的效果。设计WordPress主题,这样大家就可以通过网络更好的使用网站的作品。
wordpress主题制作目录位于wp-content/themes/。主题的子目录拥有所有样式文件、模板文件、可选的函数文件(functions.php)、JavaScript文件、图片等。比如说一个叫做test的主题就会放在 wp-content/themes/test/目录里。请避免使用数字名字,这会导致无法在主题列表中正常显示出来。wordpress主题制作每一个发行版都会有一个默认的主题。请认真查看默认的主题,这样可能会对制作网站自己的主题有帮助。
WordPress 主题除了图片和JavaScript,经常由三种文件构成。样式表文件style.css,控制着页面的外观,函数文件 (functions.php)。模板文件,它控制着从数据库中调出的数据所呈现的外观。
wordpress主题制作的CSS文件不仅定义了网站的主题样式,style.css *必须以注释的形式列出主题的详细信息。*两个不同的主题是不允许拥有相同的表述的,因为这样会导致主题选择出错。如果网站通过拷贝一个你已经制作的主题来制作你新的主题,请确保先更改这些头部注释。
wordpress主题制作也有很多好处:主题将样式表单和模板文件从系统文件中独立出来,这样网站升级时就不会对网站的视觉外观造成大幅影响。每个主题的呈现样式和网页布局都是独一无二的,通过主题更换,WordPress网站可以快速改变其外观。用户再也不必为了让网站表现得清新自然而清除CSS、HTML、PHP代码。
我们自己开发wordpress主题制作原因还在于:这是一个深入学习CSS、HTML/XHTML、PHP的好机会,同时也是一个积累CSS、HTML/XHTML、PHP实践经验的机会。wordpress主题制作可以发挥站长的创造性,开发主题是一个充满乐趣的过程(大部分时候),将主题公开发布,与其他用户分享自己的劳动成果,回馈WordPress社区。
随着WordPress功能的增强,以及人们对于WordPress建站的功能需求的提高,现在的wordpress主题制作一般都不仅仅几串代码那么简单了,不过再怎么复杂,文件一般都是比较常用的,也是最基本的。WordPress主题的判断标签,比较常用于面包屑导航和侧边栏中,用于判断不同的页面加载不同的内容,可以多个搭配一起用,有些还可以定义参数,运用的好的话,可以制定出很多不同的显示方案。
相信很多朋友使用的WordPress主题都经过了自己的一些修改,好不容易折腾好了,主题的升级版发布了,要不要升级呢?升级以后,还得重新再次修改?郁闷啊!
其实,你大可不必如此烦恼,使用Wordpress的子主题功能,一切问题都可以迎刃而解!
很多朋友使用的是可以在线更新的WordPress主题,有的由于自己特殊的需求会对主题进行一定的自定义开发或修改,但是这样的话,如果主题以后发布了升级版本,你如果升级的话,原来你做的二次开发就都没了,还要重新做一次。那么怎么才能解决这个困境呢?其实很简单的,只要大家使用WordPress的子主题功能来对主题进行二次开发就行了。
其实WordPress子主题也是一个主题,它继承了另一个主题——父主题——的功能,并允许你对父主题的功能进行修改,或者添加新功能。
创建一个子主题是很简单的。创建一个目录,将格式编写正确的 style.css 文件放进去,一个子主题就做成了!
只需要对 HTML 和CSS 具有基本的了解,您就可以通过创建一个非常基本的子主题 来对一个父主题的样式和布局进行修改和扩展,而不需要对父主题的文件作任何修改。
通过这样的方式,当父主题被更新的时候,您所做的修改就可以保存下来。
因为这个原因,我们强烈推荐您使用子主题的方式来对主题进行修改。
如果您对 PHP, WordPress Templates,和 WordPress Plugin API有个基本的理解,理论上来讲,您可以使用子主题对父主题的每一个方面进行扩展,而不需要对父主题的文件进行任何修改。
本文将说明如何创建一个基本的子主题并解释您能用它来干什么。本文将使用 WordPress 3.0 的默认主题 Twenty Ten 作为父主题进行举例说明。
子主题放在wp-content/themes目录下属于自己的目录里。下面的结构显示的就是子主题和它的父主题(Twenty Ten)在典型的WordPress目录结构中的位置:
这个文件夹里面必须少至只包含一个style.css文件,也可以包含多至一个完整WordPress主题所拥有的文件:
让我们看看它们是如何起作用的。
style.css是一个子主题唯一必须的文件。它的头部提供的信息让WordPress辨认出子主题,并且重写父主题中的style.css文件。
对于任何WordPress主题,头部信息必须位于文件的顶端,唯一的区别就是子主题中的Template:
行是必须的,因为它让WordPress知道子主题的父主题是什么。
下面是一个style.css文件的头部信息的示例:
123456789 | /*Theme Name: Twenty Ten ChildTheme URI: http: //example.com/Description: Child theme for the Twenty Ten themeAuthor: Your name hereAuthor URI: http: //example.com/about/Template: twentytenVersion: 0.1.0*/ |
逐行的简单解释:
Theme Name
. (必需) 子主题的名称。Theme URI
. (可选) 子主题的主页。Description
. (可选) 子主题的描述。比如:我的第一个子主题,真棒!Author URI
. (可选) 作者主页。Author
. (optional) 作者的名字。Template
. (必需) 父主题的目录名,区别大小写。 注意: 当你更改子主题名字时,要先换成别的主题。Version
. (可选) 子主题的版本。比如:0.1,1.0,等。*/
这个关闭标记的后面部分,就会按照一个常规的样式表文件一样生效,你可以把你想对WordPress应用的样式规则都写在它的后面。
要注意的是,子主题的样式表会替换父主题的样式表而生效。(事实上WordPress根本就不会载入父主题的样式表。)所以,如果你想简单地改变父主题中的一些样式和结构——而不是从头开始制作新主题——你必须明确的导入父主题的样式表,然后对它进行修改。
下面的例子告诉你如何使用@import
规则完成这个。
这个例子中的父主题是Twenty Ten,我们喜欢这个主题的几乎每个部分,除了网站标题的颜色,因为我想把它从黑色的改成绿色的。使用子主题的话,只用完成以下三个简单的步骤:
123456789101112 | /*Theme Name: Twenty Ten ChildDescription: Child theme for the Twenty Ten themeAuthor: Your name hereTemplate: twentyten*/ @import url(\\\"../twentyten/style.css\\\"); #site-title a { color: #009900;} |
下面一步步解释上面代码的作用:
/*
开启子主题的头部信息。Theme Name:
子主题名称的声明。Description:
主题的描述(可选,也可被省略)。Author:
作者名字的声明(可选,也可被省略)。Template:
声明子主题的父主题,换言之,父主题所在的文件夹的名称,区分大小写。*/
子主题头部信息的关闭标记。@import
规则将父主题的样式表调入#site-title a
定义网站标题的颜色(绿色),覆盖父主题中相同的样式规则。@import
规则需要注意的是,@import
规则之前没有其他的CSS样式规则,如果你将其他的规则置于它之上,那么它将无效,并且父主题的样式表不会被导入。
不像style.css,子主题中的functions.php不会覆盖父主题中对应功能,而是将新的功能加入到父主题的functions.php中。(其实它会在父主题文件加载之前先载入。)
这样,子主题的functions.php提供了一个灵活稳定的方式来修改父主题的功能。如果你想在你的主题里加入一些PHP函数,最快的方式可能是打开functions.php文件然后加入进去。但那样并不灵活:下次你的主题升级更新了,你加入的新功能就会丢失掉。相反地,如果你使用子主题,将functions.php文件放进去,再将你想加入的功能写进这个文件里,那么这个功能同样会工作得很好,并且对于父主题以后的升级更新,子主题中加入的功能也不会受到影响。
functions.php文件的结构非常简单:将PHP起始标签置于顶部,关闭标签置于底部,它们之间就写上你自己的PHP函数。你可以写得很多,也可以写得很少,反正按你所需。下面的示例是一个基本的functions.php文件的写法,作用是将favicon链接加入到HTML页面的head元素里面。
12345678 | <?php function favicon_link() { echo \\\'<link rel=\\\"shortcut icon\\\" type=\\\"image/x-icon\\\" href=\\\"/favicon.ico\\\" />\\\' . \\\"n\\\";}add_action(\\\'wp_head\\\', \\\'favicon_link\\\'); ?> |
给主题作者的提示。事实上子主题的functions.php首先加载意味着你的主题的用户功能可插入——即子主题是可替换的——通过有条件地进行声明。例如:
12345 | if (!function_exists(\\\'theme_special_nav\\\')) { function theme_special_nav() { // Do something. }} |
用这种方式,子主题可以替换父主题中的一个PHP函数,只需要简单地对它再次声明。
模板文件 在子主题中的表现和style.css一样,它们会覆盖父主题中的相同文件。子主题可以覆盖任何父主题模板中的文件,只需要创建同名文件就行。(注意:index.php在WordPress3.0及以上版本才能被覆盖。)
同样,这项WordPress的功能允许你修改父主题的样式功能而不用去编辑父主题的文件,并且你的修改能让你在更新父主题后继续保留。
下面是一些使用模板文件的子主题的例子:
除了style.css,functions.php,index.php和home.php,子主题可以使用任何正式主题使用的类型的文件,只要文件被正确链接。打个比方,你可以使用在样式表里或者Javascript文件里链接的图标、图片,或者从functions.php文件中调用出来的额外PHP文件。
Demand feedback