最近开始筹备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&结构&索引的更多相关文章

  1. WordPress主题制作教程5:循环

    wordpress循环分两种,一种是自定义循环,一种是默认循环. 自定义循环:根据指定参数进行实例化 调用所有页面,post_type值:page对应页面,post对应文章 <?php $arg ...

  2. WordPress主题制作教程1:文件构成

    在最简单的情况下,一个WordPress主题由两个文件构成: index.php ------------------主模版 style.css  -------------------主样式表 以下 ...

  3. WordPress主题制作教程2:导航菜单制作

    实现自定义菜单,需要用到的函数是wp_nav_menu(); 在主题目录下的functions.php的 <?php ….. ?> 之间,添加以下菜单注册代码,这样你就可以在主题文件中使用 ...

  4. WordPress主题制作教程6:常用模版标签

    在wordpress中,模板标签指一些字段,比如标题,内容,作者,发布日期,评论数等等,获取静态值和循环里面经常使用. 输出模板标签一般有两种方式:the_yourtag() 输出标签值和get_th ...

  5. WordPress主题制作教程9:文章形式

    wordpress的文章形式: aside -----------------日志:不显示标题的标准文章image --------------图像:单张图像.文章中的首个 <img /> ...

  6. WordPress主题制作教程7:引用其他php的方法

    在模板中包含指定的模板文件,指定{slug}和{name}就可以包含文件{slug}-{name}.php,如果没有这个文件则包含{slug}.php文件 <?php get_template_ ...

  7. WordPress主题制作教程10:添加文章类型插件Custom Post Type UI

    下载 Custom Post Type UI>> 用Custom Post Type UI添加自定义文章类型对于新手来说最简单不过了,下载安装后,在插件栏启用一下,就可以开始添加文章类型了 ...

  8. WordPress主题制作教程8:自定义page模版

    创建新文件,头部注释 <?php /* Template Name: 新的page模版 */ ?> 在页面编辑右栏体现:

  9. WordPress主题制作教程4:调用指定页面内容

    假设页面page_id=86 $page_id = 86; echo "标题:".get_post($page_id)->post_title; echo "内容: ...

随机推荐

  1. UVa 10088 (Pick定理) Trees on My Island

    这种1A的感觉真好 #include <cstdio> #include <vector> #include <cmath> using namespace std ...

  2. UVA 4080 Warfare And Logistics 战争与物流 (最短路树,变形)

    题意: 给一个无向图,n个点,m条边,可不连通,可重边,可多余边.两个问题,第一问:求任意点对之间最短距离之和.第二问:必须删除一条边,再求第一问,使得结果变得更大. 思路: 其实都是在求最短路的过程 ...

  3. 【JSP】三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  4. 关于Android Studio升级到2.0后和Gradle插件不兼容的问题

    今天升级AS到2.0后,用AS在真机上调试,发现报了如下错误: This version of Android Studio is incompatible with the Gradle Plugi ...

  5. js如何判断是否在iframe中及防止网页被别站用 iframe嵌套 (Load denied by X-Frame-Options)

    1. js如何判断是否在iframe中 //方式一 if (self.frameElement && self.frameElement.tagName == "IFRAME ...

  6. MyBatis学习 之 四、MyBatis配置文件

    目录(?)[-] 四MyBatis主配置文件 properties属性 settings设置 typeAliases类型别名 typeHandlers类型句柄 ObjectFactory对象工厂 pl ...

  7. oracle返回多结果集

    kavy 原文 oracle返回多结果集 Oracle存储过程: create or replace procedure P_Sel_TopCount2(in_top in number, out_c ...

  8. 动态 SQL

    MyBatis 的强大特性之一便是它的动态 SQL.如果你有使用 JDBC 或其他类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句有多么痛苦.拼接的时候要确保不能忘了必要的空格,还要注意省掉 ...

  9. codeforces 682C Alyona and the Tree DFS

    这个题就是在dfs的过程中记录到根的前缀和,以及前缀和的最小值 #include <cstdio> #include <iostream> #include <ctime ...

  10. 【LeetCode 215】Kth Largest Element in an Array

    Find the kth largest element in an unsorted array. Note that it is the kth largest element in the so ...