WordPress 博客程序执行过程详解

也许你使用 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 函数和类库,并进行配置。

以上是 WordPress 博客程序执行过程详解 的全部内容, 来源链接: utcz.com/p/231780.html

回到顶部