WordPress主题制作教程[壹] - 了解WP&结构&索引
最近开始筹备WordPress主题开发了。首先我们在此章节中进行了解什么是WP,以及WP的结构。通过这个文章索引到以后所写的WP系列教程。
(抱歉,大家不要急,持续更新中....)
1.首先,我们来认识一下什么是wordpress,可以用来做什么?
WordPress是一种使用PHP语言开发的博客平台,用户可以在支持PHP和MySQL数据库的服务器上架设属于自己的网站。也可以把 WordPress当作一个内容管理系统(CMS)来使用。
WordPress是一款个人博客系统,并逐步演化成一款内容管理系统软件,它是使用PHP语言和MySQL数据库开发的。用户可以在支持 PHP 和 MySQL数据库的服务器上使用自己的博客。
WordPress有许多第三方开发的免费模板,安装方式简单易用。不过要做一个自己的模板,则需要你有一定的专业知识。比如你至少要懂的标准通用标记语言下的一个应用HTML代码、CSS、PHP等相关知识。
WordPress官方支持中文版,同时有爱好者开发的第三方中文语言包。WordPress拥有成千上万个各式插件和不计其数的主题模板样式。
2.Wordpress的现状和前景
大家可以通过百度了解下,WordPress平台现在已成为全球18.9%网站的基础平台,有超过1亿个站点。
这是非常庞大的一个数字,而且是非常具有竞争力的。
前景就不用我多说了,已经很牛XX了,用的人只会更多。
2.Wordpress的优点和缺点
wordpress能博得这么多用户的青睐,一定非常好把? 那么我们来罗列一下
优点:
有数量众多的主题和插件,你可以很方便的扩展。
你可以很轻易的扩展你想要的功能,你可以将WP改造成CMS、SHOP、企业站、分类信息等等。
系统遍布钩子,可以很方便的进行开发工作。
系统安装包较为小巧,只有6.9M 的大小。
系统版本碎片化程度较低,你可以只用关心最新版本专心开发,而不用纠结会不会兼容老版本。
可以很容易的搜索到很多关于WP的建站和使用技巧。
缺点:
系统只有12张表,这12张表可以扩展出很多功能,但是效率也因此降低了。
不适合建大数据大流量网站(优化得好可以)
系统功能较少(这应该是能成功的关键因素)
AD: 挖沙啦电影网
/////////////////////////////////////////////////////////////////
模版文件及定义
header.php 页头模版 *
footer.php 页脚模版 *
index.php 首页模版 *
single.php 文章页面模版 *
page.php 页面模版 *
404.php 404错误页模版 *
search.php 搜索结果模版 *
archive.php 文章归档 *
archives.php
author.php 作者模板
category.php 分类目录模板
comments.php 评论模版 *
comments-popup.php
image.php 图片附件模版
links.php
sidebar.php 边栏模版
functions.php 模版函数 *
style.css 样式表 *
rtl.css 样式表(RTL) *
screenshot.png 缩略图 *
-images 图片文件夹
-js 脚本文件夹
-fonts 字体文件夹
-widgets 小工具文件夹
-page-templates 页面模版文件夹
/////////////////////////////////////////////////////////////////
页面及文章模版的创建
<?php
/*
Template Name:两列模版
*/
?>
//将以上的代码复制到模版的顶部即可,模版放置在page-templates统一管理
/////////////////////////////////////////////////////////////////
小工具注册&创建widgets
1.首先,需要在functions.php创建小工具的引用
require_once get_stylesheet_directory() . '/widgets/widget-index.php';
-widgets 小工具文件夹
--widget-index.php 小工具索引文件(这里会掌管所有小工具的注册)
--widget-tools1.php 具体的小工具
--widget-tools2.php ......
2.在数组中创建小工具的文件名widget-{这里才是array中出现的文件名}.php
$widgets = array(
'tools1',
'tools2'
);
3.在小工具的顶部创建
function widget_ui_tools1() {
$widget_ops = array( 'classname' => 'widget_ui_tools1', 'description' => '显示测试1的内容' );
$this->WP_Widget( true, 'DG-测试1-标题', $widget_ops );
}
具体的关于小工具的一些知识和理论请见:小工具注册&创建 [widgets]
////////////////////////////////////////////////////////////////////
1.你需要在 /wp-content/Themes/ 文件夹下创建你的主题文件夹。
2.你需要一次创建 index.php、screenshot.jpg、style.css
3.你需要在style.css文件的顶部写入以下主题信息
4.进入WP的主题列表,你可以看到你所创建的演示了。
/*
Theme Name: DNNGO One Theme
Description: This is a test theme.
Theme URI: https://www.dnngo.net/
Author: zhangzaiman
Author URI: https://www.dnngo.net/
Version: 1.0
*/
////////////////////////////////////////////////////////////////////
你可以将制作好的静态HTML放入到index.php,然后拆分共用的页头和页脚。
将页头和页脚代码分别放入header.php、footer.php这两个文件中。
在下面页头和页脚部分替换这两个函数(同 include用法一样)
<?php get_header(); ?> //装载页头模版header.php
<?php get_footer(); ?> //装载页脚模版footer.php
AD: 挖沙啦电影网
WordPress主题制作教程[壹] - 了解WP&结构&索引的更多相关文章
- WordPress主题制作教程5:循环
wordpress循环分两种,一种是自定义循环,一种是默认循环. 自定义循环:根据指定参数进行实例化 调用所有页面,post_type值:page对应页面,post对应文章 <?php $arg ...
- WordPress主题制作教程1:文件构成
在最简单的情况下,一个WordPress主题由两个文件构成: index.php ------------------主模版 style.css -------------------主样式表 以下 ...
- WordPress主题制作教程2:导航菜单制作
实现自定义菜单,需要用到的函数是wp_nav_menu(); 在主题目录下的functions.php的 <?php ….. ?> 之间,添加以下菜单注册代码,这样你就可以在主题文件中使用 ...
- WordPress主题制作教程6:常用模版标签
在wordpress中,模板标签指一些字段,比如标题,内容,作者,发布日期,评论数等等,获取静态值和循环里面经常使用. 输出模板标签一般有两种方式:the_yourtag() 输出标签值和get_th ...
- WordPress主题制作教程9:文章形式
wordpress的文章形式: aside -----------------日志:不显示标题的标准文章image --------------图像:单张图像.文章中的首个 <img /> ...
- WordPress主题制作教程7:引用其他php的方法
在模板中包含指定的模板文件,指定{slug}和{name}就可以包含文件{slug}-{name}.php,如果没有这个文件则包含{slug}.php文件 <?php get_template_ ...
- WordPress主题制作教程10:添加文章类型插件Custom Post Type UI
下载 Custom Post Type UI>> 用Custom Post Type UI添加自定义文章类型对于新手来说最简单不过了,下载安装后,在插件栏启用一下,就可以开始添加文章类型了 ...
- WordPress主题制作教程8:自定义page模版
创建新文件,头部注释 <?php /* Template Name: 新的page模版 */ ?> 在页面编辑右栏体现:
- WordPress主题制作教程4:调用指定页面内容
假设页面page_id=86 $page_id = 86; echo "标题:".get_post($page_id)->post_title; echo "内容: ...
随机推荐
- UVa 10561 (SG函数 递推) Treblecross
如果已经有三个相邻的X,则先手已经输了. 如果有两个相邻的X或者两个X相隔一个.,那么先手一定胜. 除去上面两种情况,每个X周围两个格子不能再放X了,因为放完之后,对手下一轮再放一个就输了. 最后当“ ...
- IIS没有ASP.NET选项卡
问题: 1.IIS没有ASP.NET选项卡 2.默认文档不起作用 分析: 1,在安装了.net framework 2.0后,iis站点属性里才会有asp.net的选项. 2,安装asp.net2.0 ...
- LeetCode Factorial Trailing Zeroes (阶乘后缀零)
题意:如标题 思路:其他文章已经写过,参考其他. class Solution { public: int trailingZeroes(int n) { <? n/: n/+trailingZ ...
- c& c++ enum
1.为什么要用enum 写程序时,我们常常需要为某个对象关联一组可选alternative属性.例如,学生的成绩分A,B,C,D等,天气分sunny, cloudy, rainy等等. ...
- 264分析两大利器:264VISA和Elecard StreamEye Tools
学了264有将近3个月有余,好多时候都在学习老毕的书和反复看JM86的代码,最近才找到264分析两大利器:264VISA和Elecard StreamEye Tools.不由得感叹,恨不逢同时. 简单 ...
- distinct数据去重关键字
在表中,可能会包含重复值.这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值.关键词 distinct用于返回唯一不同的值. 表A: 示例1 select distinct nam ...
- Jabber/XMPP协议与架构
一.概述 由Jeremie Miller于1998年开始这个项目.Jabber是一个开放源码形式组织产生的网络实时通信协议,第一个公开版本于2000年5月发行.Jabber已经由IETF XMPP协议 ...
- 开源侧滑菜单SlidingMenu主要方法介绍
SlidingMenu是一个很好使用的侧滑菜单开源项目,它的表现形式类似于DrawerLayout和SlidingDrawer,具体效果如下图所示,左侧为侧滑Menu菜单,右侧黑色部分为内容显示视图C ...
- Calling C++ code from C# z
http://blogs.msdn.com/b/borisj/archive/2006/09/28/769708.aspx I apologize for the long delay for thi ...
- 1. 搭建NDK集成开发环境