WordPress 博客程序执行过程详解

发布于 2017-12-13 00:06:38 字数 1678 浏览 3196 评论 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 函数和类库,并进行配置。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

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

0 文章
0 评论
84960 人气
更多

推荐作者

lorenzathorton8

文章 0 评论 0

Zero

文章 0 评论 0

萧瑟寒风

文章 0 评论 0

mylayout

文章 0 评论 0

tkewei

文章 0 评论 0

17818769742

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文