`
baiyuxiong
  • 浏览: 179274 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

【转载】wordpress工作原理

阅读更多
http://blog.ossxp.com/2010/01/166/

WP初始化的过程:当你输入<yourlink>/wordpress对wordpress进行初始化时,wordpress默认会找
根目录下的index.php页面,看一下index.php页面。

<?php
define('WP_USE_THEMES', true);
/** Loads the WordPress Environment and Template */
require('./wp-blog-header.php'); ---把/wp-blog-header.php包含进来
?>
你会发现,它会去调用根目录下的wp-blog-header.php,我们继续看wp-blog-header.php。

<?php
if ( !isset($wp_did_header) ) {
$wp_did_header = true;
require_once( dirname(__FILE__) . '/wp-load.php' );  ---加载wp-load.php
wp();  ---加载function WP();
require_once( ABSPATH . WPINC . '/template-loader.php' );   ---加载模板文件
}
?>
通过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类的实例。然后,wp-blog-header执行wp()函数,并通过其调用$wp所属WP类的main方法,

这个方法又调用一系列方法,但最重要的是parse_request方法, WP从这里开始解析URL并建立主循环。
我们看一下wordpress的主方法:

function main($query_args = '') {
$this->init();  --初始化环境
$this->parse_request($query_args);   --解析请求
$this->send_headers();  --发送头信息
$this->query_posts();  --查询日志
$this->handle_404();   --操作404(URL地址不存在)
$this->register_globals();  --注册全局变量
do_action_ref_array('wp', array(&$this));
}
这基本上就是wordpress初始化时的信息。

下面就讨论一下当我们设置自定义的永久链接时,wordpress的运作过程。
当我们使用了自定义的永久链接的时候,wordpress会自动生成.htaccess文件,并且在这个文件中生成相

对应于永久链接的匹配规则,在wordpress/wp-includes/rewrite.php中有针对.htaccess文件的重写规则,其

中$use_verbose_rules参数规定了输出信息的详尽和简约,默认的情况下为false。输出的信息比较简单,

如下

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress
如果想查看完整的匹配规则,就把$use_verbose_rules设置为true。
wordpress在对使用了自定义的永久链接进行处理时,它还是会调用wp-include/classes.php文件中

的parse_request函数,对发过来的请求进行解析,无论是否为pathinfo类型的请求,都会被赋值给

$request参数,然后调用该参数与.htaccess中的规则进行匹配,如果找到一个匹配就会“发送头信息”

、“查询日志”,如果没有任何匹配就会返回404错误。
分享到:
评论

相关推荐

    WordPress工作原理

    WordPress工作原理,页面调用过程等

    wordpress工作原理

    WordPress 工作原理 WordPress 是一个开源的内容管理系统(Content Management System),它的工作原理主要包括以下几个方面: 一、 WordPress 初始化过程 当用户输入 URL 并访问 WordPress 站点时,WordPress 会...

    wordpress 代码分析整理

    WordPress,作为全球最受欢迎的开源内容管理系统(CMS),其代码结构和原理对于开发者来说具有极高的学习价值。本文将基于提供的文件名,深入探讨WordPress的前端代码、主题开发、代码结构以及网站数据分析等方面的...

    wordpress系统源代码简约版

    这个"wordpress系统源代码简约版"可能去除了不必要的组件或优化了性能,对于学习WordPress工作原理、理解其架构或者进行二次开发非常有帮助。通过深入研究源代码,你可以了解到WordPress如何处理HTTP请求,如何执行...

    wordpress源码资源下载网带1200数据

    综上所述,这个资源包提供了一个完整的WordPress站点环境,包括了运行和扩展功能所需的组件,对于想要深入理解WordPress工作原理、开发自定义功能或快速建立新站点的用户来说,是一份宝贵的资源。同时,1200份资源...

    人人都能学会的WordPress实战课

    通过学习这门课程,你将能够深入理解WordPress的工作原理,从而更好地管理、定制和扩展你的网站。 首先,我们将从基础入手,了解WordPress的基本架构和安装过程。这包括如何下载WordPress、选择合适的主机环境、...

    免费wordpress模板下载

    此外,兼容性也是关键,这款模板应与大多数流行的WordPress插件协同工作,以实现更多功能,如SEO优化、社交媒体集成、邮件订阅等。 在安装和使用免费WordPress模板时,用户需要确保模板遵循WordPress的编码标准,...

    WordPress 网站系统源码包 6.4.2

    WordPress 是一个广泛使用的开源内容管理系统(CMS),专为构建网站和博客而设计。6.4.2 版本是该平台的一个更新版本,发布于2023年12月7日,它提供了多项改进、修复和新特性,旨在提升用户体验和网站性能。 1. **...

    wordpress建站攻略

    通过本篇文章的学习,我们不仅了解了WordPress的基本概念和工作原理,还掌握了搭建WordPress网站所需的基本步骤和技术要点。无论是新手还是有一定经验的用户,都可以根据这些指南顺利地构建出自己的网站。记住,在...

    Wordpress博客每日定时发布 每天60秒读懂世界源码源码资源下载整理.zip

    Wordpress博客是一个非常流行的开源内容管理系统,用于创建各种类型的网站,尤其是个人博客和新闻站点。...对于想要优化自己的博客运营或深化对WordPress工作原理理解的用户来说,这些都是非常有价值的信息。

    基于PHP的博客WordPress正式版源码.zip

    总的来说,下载并研究这个"基于PHP的博客WordPress正式版源码.zip"将有助于你深入了解WordPress的工作原理,学习如何自定义主题、开发插件,甚至构建复杂的Web应用。无论是初学者还是经验丰富的开发者,这都是一次...

    中文wordpress帮助文档

    通过学习和实践这份"中文WordPress帮助文档",你不仅能够创建出独一无二的WordPress主题,还能深入了解WordPress的工作原理,从而更好地满足用户需求,提升网站的整体性能和吸引力。在这个过程中,不断学习、实践和...

    wordpress英文模板maxx

    6. **测试和优化**:确保所有页面在WordPress环境中正常工作,并进行SEO优化和性能调整。 在汉化交流使用时,你可能需要: 1. **翻译文件**:找到模板中的语言文件(通常是.pot或.po/mo文件),使用工具如Poedit...

    wordpress二次开发全能教程

    在实际操作时,需要依据完整的、正确的WordPress API和函数进行开发工作。在进行WordPress二次开发时,还需要注意备份原文件,以防止在修改过程中出现错误导致网站无法访问。同时,测试每一个修改后的功能以确保它们...

    wordpress

    通过这些核心文件,我们可以看到WordPress的核心功能和工作原理。了解这些文件的作用对于WordPress的定制化开发和故障排查至关重要。无论是进行主题开发、插件编写,还是日常的网站维护,对这些文件的理解都将大大...

    WordPress 4.9.4 简体中文

    WordPress简体中文版本。 下载压缩包到本地,解压缩,双击解开的文件夹中的readme.html文件,即可查看WordPress的介绍、安装,和升级方法。在您将程序文件上传至服务器相应目录后,安装过程只需5分钟。 已经在使用...

    WordPress v5.2.2 正式版.zip

    WordPress简介  WordPress是一个注重美学、易用性和网络标准的个人信息发布平台。WordPress 虽为免费的开源软件,但其价值是无法用金钱来衡量。使用WordPress可以搭建功能强大的网络信息发布平台,但更多的是应用...

    真正的WordPress帮助文档pdf版(中文)

    **WordPress帮助文档中文PDF版** 是一套全面的指南,涵盖了从初学者到高级用户的各个层次。这个资源集合了7个不同主题的PDF文件,旨在帮助用户深入理解和掌握WordPress的使用,无论你是刚接触WordPress的新手还是...

    [WordPress] WordPress 极限编程 (英文版)

    In this unique book, the authors share their experiences and advice for working effectively with clients, manage a project team, develop with WordPress for larger projects, and push WordPress beyond ...

Global site tag (gtag.js) - Google Analytics