让我们展开这一页——第六回:从wp-setting.php到wp-includes目录下的load.php
  包拯 发表于 2012-03-15 22:31  分类:技术资料  2,479 次阅读  0条评论

第六回:从wp-setting.php到wp-includes目录下的load.php

通过WordPress根目录下的wp-config.php第87行代码的require_once(ABSPATH . 'wp-settings.php');我们来到了该目录下的wp-setting.php这个文件。

wp-setting.php这个文件的作用是设置WordPress的公共变量、加载WordPress的类库。

先来到wp-setting.php文件的第18行,这一行的作用是定义了一个常量WPINC,这个常量的值为wp-includes。现在我们打开WordPress的目录,我们看到这个目录里不止有php文件,还有若干个目录,之所以设置这么多目录,主要是为了将相类似的、零碎的php代码放在一起,为了更好的组织代码——试想如果一个项目几百几千个php文件,所有这些文件都放在同一个目录里,那将是多么恐怖的事情!

 

程序顺序执行,来到了第21行require( ABSPATH . WPINC . '/load.php' );

看到require语句中的参数了吧?【ABSPATH . WPINC . '/load.php'】,这个ABSPATH就是前面定义的WordPress根目录,在我这里就是E:/wp-prj/,而WPINC则是wp-includes,那么我们require的文件就是E:/wp-prj/wp-includes/load.php。

 

好吧,这绝对不是一口直直的水井,而是一个巨大的洞窟,可能是一个小小的入口,但是进去以后,里面蜿蜒曲折,别有洞天,哈哈我们来到了WordPress根目录下的/wp-includes/load.php文件,让我们打开这个文件。

 

这个文件确实是别有洞天,他足有20多KB大小,大约600多行,共20多个函数。主要是用来定义加载WordPress时所需的函数。

 

总共有20多个函数啊,我将带着你挨个读完每个函数——希望你的耐心还足够,这不正是我们需要和缺少的么?

 

首先来到第17行,看到了这个函数——function wp_unregister_GLOBALS()。

这个函数的主要作用是关闭register_globals。

问:啥?关闭啥?

答:关闭register_globals,你先别着急,我知道刚刚获知HTML不止代表How To Make Love,还代表超文本标记语言的你并不一定知道register_globals是什么意思。

好吧,请首先打开你的PHP安装目录下的php.ini,在里面搜索这个register_globals,相信你应该搜到了,这个register_globals是PHP的一个配置,这个配置将影响到PHP如何接收传递过来的参数。

这个register_globals可以设置为On或者Off。

 

今天有点困,先写着点吧(有点打雷啦,赶紧回去下雨收衣服了的意思,明天再接着写吧)

本文固定链接: http://www.youduoshao.com/2012-03-15/201203152030.html

填写您的称呼和邮箱即可发布评论

快捷键:Ctrl+Enter