WordPress 博客程序执行过程详解 - 文章教程

WordPress 博客程序执行过程详解

发布于 2017-12-13 字数 2170 浏览 2444 评论 0

也许你使用 WordPress 有一段时间了,但是你认真去了解过 WordPress 的执行过程么,着对于我们开发插件或者是主题有很大的帮助。

WordPress 博客程序执行过程详解

index.php 作为整个网站统一的入口文件

  • 包含 wp-blog-heaer.php
  • 包含 wp-load.php
  • 包含 wp-config.php
  • 数据库、语言包配置等
  • 包含 wp-setting.php
    1. 对各种运行环境做兼容性处理
    2. 定义路径常量等
    3. 载入公共函数,类
    4. 初始化公用对象(数据库等)
    5. 魔术引用处理

运行 wp():

  1. 初始化
  2. 发送HTTP头信息
  3. post (文章数据)查询,这里很关键,整个wp站的post 数据都是通过这里查询的。

包含 template-loader.php

根据页面类型载入不同的模板页面文件


我们可以看出整个 wp 的程序结构是很特别的,也不象一些普通的面向过程,也不是 MVC,总之就是他自己的程序结构。

在模板前面的程序基本上都是公共处理,但是把 post 的查询的逻辑处理放在公共处理中。因为整个wp的页面基本上都有查询 post。

其它的逻辑操作基本上是在模板中调用的(比如评论),所以它的模板并不是单纯的V,可以算是C+V。

加载 WordPress 运行环境

加载流程:index.php -> wp-blog-header.php -> wp-load.php -> wp-config.php -> wp-settings.php

  • wp-load.php:根据 wp-config.php 文件是否在判断程序是否已安装,已安装则加载 wp-config.php,未安装则提示安装
  • wp-config.php:记录了安装时的配置信息,包括数据库和程序的配置,并加载 wp-settings.php
  • wp-settings.php:加载 wp 的函数和类库等环境

加载模板

加载流程:index.php -> wp-blog-header.php -> template-loader.php

wp-settings.php 分析

  • $blog_id:通过$blog_id可以配置多个blog。

timer_start() 和 timer_stop() 函数用于计算程序运行时间。

从文件开始到定义 timer_start() 主要配置 PHP 环境,之后加载 WordPress 函数和类库,并进行配置。

如果你对这篇文章有疑问,欢迎到本站 社区 发帖提问或使用手Q扫描下方二维码加群参与讨论,获取更多帮助。

扫码加入群聊

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

目前还没有任何评论,快来抢沙发吧!

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

2583 文章
29 评论
84935 人气
更多

推荐作者

佚名

文章 0 评论 0

cs163v

文章 0 评论 0

Mr Rock

文章 0 评论 0