WordPress初始化核心文件load.php源码分析

WordPress load.php文件部分核心函数如下:

• wp_unregister_GLOBALS(),关闭全局变量;

• wp_fix_server_vars(),为不同方式(如IIS、Apache等)安装准备$_SERVER变量;

• wp_check_php_mysql_versions(),检查PHP和数据库版本是否兼容等;

• wp_favicon_request(),检查是否收到由于缺少 favicon.ico 的而产生请求;

• wp_maintenance(),检查WP是否处理维护升级状态,并返回维护状态提示;

• wp_debug_mode(),设置PHP的错误处理方式和WP的调试模式;

• wp_set_lang_dir(),设定语言包所在路径;

• require_wp_db(),加载数据库类文件wp-db.php并定义全局变量$wpdb,内容为wpdb类的构造函数;wp-db.php仅定义了一个名为wpdb的类,该类内定义多个函数,如设定数据表前缀、连接数据库、选择数据库、创建数据库SQL语句模板(如select、insert、update等数据库操作语句模板)等,可以说WP执行的所有数据操作所用SQL语句都是由该类实现的;

• wp_set_wpdb_vars(),设定数据表前缀和数据库表列的格式说明符,设定表前缀使用的是全局对象$wpdb的set_prefix()函数,该对象由wpdb类实例化生成,对于格式说明符主要是数值型列使用%d字符型列使用%s等,便于使用格式化输出函数;

• wp_start_object_cache(),开启WP对象缓存,如果wp-content文件夹中存在object-cache.php文件,则使用他作为扩展的对象缓存;

• wp_not_installed(),如果访问地址尚未安装WP,则启动安装程序,加载文件wp-admin/install.php、wp-includes/pluggable.php等;

• wp_get_mu_plugins(),返回包含在全局作用域中的必须使用的插件数组;

• wp_set_internal_encoding(),设置编码方式,默认使用UTF-8;

• wp_magic_quotes(),对$_GET、$_POST、 $_COOKIE和$_SERVER 添加魔术引用,并且将$_GET、$_POST合并成数组$_REQUEST;

• shutdown_action_hook(),在PHP结束运行前触发挂载点shutdown,然后执行函数wp_cache_close();

• wp_clone(),克隆对象,相当于将PHP的clone()函数重命名为wp样式的克隆函数;

• is_admin(),判断当前请求页面是否是后台页面,可以控制后台面板页面仅允许管理员访问;

• is_blog_admin(),判断当前请求是否可以访问后台URL中含/wp-admin/的页面;

• wp_load_translations_early(),初始化过程中的错误提示信息,且可翻译成对应语言;

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?