每天一个WordPress文件:wp-blog-header.php
今天给大家讲讲 wp-blog-header.php
文件:
首先看它的注释:
/**
* Loads the WordPress environment and template.
*
*/
意思是加载 WordPress 的环境和模板。
他的代码很简单,首先使用变量 $wp_did_header
用来防止该文件被多次加载。接下来的代码分成三部分(
我把下面代码的注释都做了一下简单的翻译,方便大家的理解):
// Load the WordPress library. 加载 WordPress 环境(核心文件,类库之类的)
require_once( dirname(__FILE__) . '/wp-load.php' );
// Set up the WordPress query. 创建 WordPress 查询
wp();
// Load the theme template. // 加载模板
require_once( ABSPATH . WPINC . '/template-loader.php' );
再简单拓展一下这三部分:
1. 加载当前目录下的 wp-load.php
文件来加载 WordPress 的核心文件。它会把 wp-config.php
,wp-setting.php
,classes.php
,fucntions.php
, query.php
等文件加载进来,并建立了三个全局变量,$wp_the_query
,$wp_rewrite
和 $wp
,分别为 WP_Query
、 WP_Rewrite
和 WP
类的实例。
2. 调用 wp()
函数,这个函数会调用 $wp
所属 WP
类的 main
方法, 这个方法又调用一系列方法,但最重要的是 parse_request
方法,WP 从这里开始解析 URL 并建立主循环。
3. 加载 wp-include
目录下的 template-loder.php
文件,就是去加载 WordPress 模板了。
详细就讲到具体文件的时候,再详细分解了。