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 "内容: ...
随机推荐
- SharePoint的安装配置
安装环境 1. Window server 2008 r2(sp2) OS.2. MS SQL Server 2008 r2.3. Office2010.4. IIS7以上.5. 确认服务器已经加入域 ...
- UVa 10652 (简单凸包) Board Wrapping
题意: 有n块互不重叠的矩形木板,用尽量小的凸多边形将它们包起来,并输出并输出木板总面积占凸多边形面积的百分比. 分析: 几乎是凸包和多边形面积的裸题. 注意:最后输出的百分号前面有个空格,第一次交P ...
- 图形数据库、NOSQL和Neo4j
简介 在众多不同的数据模型里,关系数据模型自80年代就处于统治地位,而且有不少实现,如Oracle.MySQL和MSSQL,它们也被称为关系数据库管理系统(RDBMS).然而,最近随着关系数据库使用案 ...
- TIOBE 2015年5月编程语言排行榜 Visual Studio系列在上升
TIOBE 编程语言社区排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网上有经验的程序员. 课程和第三方厂商的数量.排名使用著名的搜索引擎(诸如 Google.MSN.Yahoo ...
- Android之 环境搭建
一. 使用ADT Bundle多合一下载包 下载地址:链接:http://pan.baidu.com/s/1gepNRjX 密码: ozdi 说 明:多合一下载包,里面包含了:sdk + ...
- I.MX6 git patch
/********************************************************************** * I.MX6 git patch * 说明: * 之前 ...
- Java [Leetcode 202]Happy Number
题目描述: Write an algorithm to determine if a number is "happy". A happy number is a number d ...
- <十一>面向对象分析之UML核心元素之组件
组件
- 【树状数组(二叉索引树)】轻院热身—candy、NYOJ-116士兵杀敌(二)
[概念] 转载连接:树状数组 讲的挺好. 这两题非常的相似,查询区间的累加和.更新结点.Add(x,d) 与 Query(L,R) 的操作 [题目链接:candy] 唉,也是现在才发现这题用了这个知识 ...
- FFmpeg在Android使用3
android 移植ffmpeg后so库的使用 只需要将我们编译好的ffmpeg的so包(在/obj/local/armeabi/libffmpeg.so)copy到所在ndk下的\platfor ...